/******/ (() => { // webpackBootstrap
/******/ 	var __webpack_modules__ = ({

/***/ "./config.js":
/*!*******************!*\
  !*** ./config.js ***!
  \*******************/
/***/ ((module) => {

var config = {
  development: {
    API_GATEWAY_DOMAIN: 'fslgh4rcu1nys.apexguard.com',
    API_GATEWAY_DOMAIN_DEF: 'api-gateway.apexguard.com',
    PLATFORM_BACKEND_DOMAIN: 'platform-backend.apexguard.com',
    WEBSOCKET_URL: 'wss://user-socket.apexguard.com/ws',
    DEBUG_LOGGING: true,
    PING_TIMEOUT: 300 * 1000,
    MAX_GATEWAYS_TO_CHECK: 3,
    ENABLED_LOCATION_SPOOFING: true,
    EXECUTE_SPOOFING_SCRIPT: true
  },
  production: {
    API_GATEWAY_DOMAIN: 'fslgh4rcu1nys.apexguard.com',
    API_GATEWAY_DOMAIN_DEF: 'api-gateway.apexguard.com',
    PLATFORM_BACKEND_DOMAIN: 'platform-backend.apexguard.com',
    WEBSOCKET_URL: 'wss://user-socket.apexguard.com/ws',
    DEBUG_LOGGING: false,
    PING_TIMEOUT: 300 * 1000,
    MAX_GATEWAYS_TO_CHECK: 3,
    ENABLED_LOCATION_SPOOFING: true,
    EXECUTE_SPOOFING_SCRIPT: true
  },
  staging: {
    API_GATEWAY_DOMAIN: 'api-gateway-staging.apexguard.com',
    API_GATEWAY_DOMAIN_DEF: 'api-gateway.apexguard.com',
    PLATFORM_BACKEND_DOMAIN: 'platform-backend-staging.apexguard.com',
    WEBSOCKET_URL: 'wss://user-socket.apexguard.com/ws',
    DEBUG_LOGGING: true,
    PING_TIMEOUT: 300 * 1000,
    MAX_GATEWAYS_TO_CHECK: 3,
    ENABLED_LOCATION_SPOOFING: true,
    EXECUTE_SPOOFING_SCRIPT: true
  }
};
var env = "development" || 0;
module.exports = config[env];

/***/ }),

/***/ "./css/style.css":
/*!***********************!*\
  !*** ./css/style.css ***!
  \***********************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_style_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../node_modules/css-loader/dist/cjs.js!./style.css */ "./node_modules/css-loader/dist/cjs.js!./css/style.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_style_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_style_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_style_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_style_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js!./css/style.css":
/*!*************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js!./css/style.css ***!
  \*************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../node_modules/css-loader/dist/runtime/getUrl.js */ "./node_modules/css-loader/dist/runtime/getUrl.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2__);
// Imports



var ___CSS_LOADER_URL_IMPORT_0___ = new URL(/* asset import */ __webpack_require__(/*! ../src/fonts/RobotoCondensed-Regular.ttf */ "./src/fonts/RobotoCondensed-Regular.ttf"), __webpack_require__.b);
var ___CSS_LOADER_URL_IMPORT_1___ = new URL(/* asset import */ __webpack_require__(/*! ../src/fonts/RobotoCondensed-Bold.ttf */ "./src/fonts/RobotoCondensed-Bold.ttf"), __webpack_require__.b);
var ___CSS_LOADER_URL_IMPORT_2___ = new URL(/* asset import */ __webpack_require__(/*! ../src/fonts/RobotoCondensed-SemiBold.ttf */ "./src/fonts/RobotoCondensed-SemiBold.ttf"), __webpack_require__.b);
var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
var ___CSS_LOADER_URL_REPLACEMENT_0___ = _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_0___);
var ___CSS_LOADER_URL_REPLACEMENT_1___ = _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_1___);
var ___CSS_LOADER_URL_REPLACEMENT_2___ = _node_modules_css_loader_dist_runtime_getUrl_js__WEBPACK_IMPORTED_MODULE_2___default()(___CSS_LOADER_URL_IMPORT_2___);
// Module
___CSS_LOADER_EXPORT___.push([module.id, `* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

@font-face {
  font-family: "Roboto Condensed";
  src: url(${___CSS_LOADER_URL_REPLACEMENT_0___}) format("truetype");
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: "Roboto Condensed";
  src: url(${___CSS_LOADER_URL_REPLACEMENT_1___}) format("truetype");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: "Roboto Condensed";
  src: url(${___CSS_LOADER_URL_REPLACEMENT_2___}) format("truetype");
  font-weight: 600;
  font-style: normal;
}



:root {

  --roboto-condencesd: "Roboto Condensed", Roboto, -apple-system, 'Inter', BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --background: #fff;
  --text-primary: #222;
  --text-secondary: #6c6d75;
  --container-bg: #fff;
  --border-color: #d1d5db;
  --button-bg: #e0e0e0;
  --button-bg-hover: #d0d0d0;
  --toggle-bg: #ccc;
  --toggle-active-bg: #4CAF50;
  --error-bg-connect: #ffcccc;
  --error-text-connect: #d00000;
  --error-bg-proxy: #fff3cd;
  --error-text-proxy: #856404;
  --сonnection-lost: #8b8a86;
  --error-bg-general: #d1ecf1;
  --error-text-general: #0c5460;
  --success-color: #23cb71;
  --error-color: #a31616;
  --input-bg: #f9f9f9;
  --input-text: #333;
  --input-border: #ddd;
  --dropdown-bg: #fff;
  --dropdown-text: #333;
  --dropdown-border: #ddd;
  --dropdown-hover: #f5f5f5;
  --shadow: 0 4px 0px rgba(0, 0, 0, 0.15);
  --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.1);
  --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.1);
  --link-color: #3E9FF8;
  --link-hover: #58afff;
  --select-bg: #fff;
  --select-text: #374151;
  --icon-color: #6c6d75;
  --header-bg: #F7F7F9;
  --footer-bg: #FFF;
  --footer-icon-active: #3E9FF8;
  --get-help-list-item-color: rgba(60, 60, 67, 0.60);
  --get-help-button-bg-color: #fff;
  --logout-button-border-color: rgba(84, 84, 86, 0.34);
  --logout-button-bg-color: transparent;
  --title-color:#000;
  --border-select:#C7D6DB;
  --text-value-selected:#1D1B20;
  --text-value-select:#1D1B20;
  --select-bg-hover:#F7F7F9;
  --text-label-float:#49454F;
  --list-item-border-color: rgba(0, 0, 0, 0.08);
  --toggle-bg-color: rgba(0, 0, 0, 0.09);
  --tooltip-border-color: transparent;
  --search-input-border-color: #E3EAF3;
  --search-input-placeholder-color: rgba(60, 60, 67, 0.6);
  --arrow-color: rgba(60, 60, 67, 0.6);
}

.dark {
  --background: #000;
  --text-primary: #fff;
  --text-secondary: #a0a0a0;
  --container-bg: #2a2a2a;
  --border-color: #444;
  --button-bg: #444;
  --button-bg-hover: #555;
  --toggle-bg: #a0a0a0;
  --toggle-active-bg: #4CAF50;
  --error-bg-connect: #4a0000;
  --error-text-connect: #ff9999;
  --error-bg-proxy: #665000;
  --error-text-proxy: #ffeb99;
  --сonnection-lost: #8b8a86;
  --error-bg-general: #0a2c34;
  --error-text-general: #99d6e1;
  --success-color: #34c759;
  --error-color: #e74c3c;
  --input-bg: #2a2a2a;
  --input-text: #e0e0e0;
  --input-border: #444;
  --dropdown-bg: #2a2a2a;
  --dropdown-text: #e0e0e0;
  --dropdown-border: #444;
  --dropdown-hover: #3a3a3a;
  --shadow: 0 4px 0px rgba(0, 0, 0, 0.4);
  --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.3);
  --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.3);
  --link-color: #3E9FF8;
  --link-hover: #58afff;
  --select-bg: #2a2a2a;
  --select-text: #e0e0e0;
  --icon-color: #a0a0a0;
  --header-bg: #292929;
  --footer-bg: #292929;
  --footer-icon-active: #3E9FF8;
  --get-help-list-item-color: rgba(255, 255, 255, 0.60);
  --get-help-button-bg-color: transparent;
  --logout-button-border-color: #545456;
  --logout-button-bg-color: #181818;
  --title-color:#fff;
  --border-select:#404042;
  --text-value-select:rgba(255, 255, 255, 0.60);
  --text-value-selected:#fff;
  --select-bg-hover:#292929;
  --text-label-float:#FFF;
  --list-item-border-color: rgba(255, 255, 255, 0.20);
  --toggle-bg-color: #404042;
  --tooltip-border-color: #545456;
  --search-input-border-color: #545456;
  --search-input-placeholder-color: rgba(255, 255, 255, 0.6);
  --arrow-color: rgba(255, 255, 255, 0.60);
}

@media (prefers-color-scheme: dark) {
  .system {
    --background: #000;
    --text-primary: #fff;
    --text-secondary: #a0a0a0;
    --container-bg: #2a2a2a;
    --border-color: #444;
    --button-bg: #444;
    --button-bg-hover: #555;
    --toggle-bg: #a0a0a0;
    --toggle-active-bg: #4CAF50;
    --error-bg-connect: #4a0000;
    --error-text-connect: #ff9999;
    --error-bg-proxy: #665000;
    --error-text-proxy: #ffeb99;
    --сonnection-lost: #8b8a86;
    --error-bg-general: #0a2c34;
    --error-text-general: #99d6e1;
    --success-color: #34c759;
    --error-color: #e74c3c;
    --input-bg: #2a2a2a;
    --input-text: #e0e0e0;
    --input-border: #444;
    --dropdown-bg: #2a2a2a;
    --dropdown-text: #e0e0e0;
    --dropdown-border: #444;
    --dropdown-hover: #3a3a3a;
    --shadow: 0 4px 0px rgba(0, 0, 0, 0.4);
    --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.3);
    --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.3);
    --link-color: #3E9FF8;
    --link-hover: #58afff;
    --select-bg: #2a2a2a;
    --select-text: #e0e0e0;
    --icon-color: #a0a0a0;
    --header-bg: #292929;
    --footer-bg: #292929;
    --footer-icon-active: #3E9FF8;
    --get-help-list-item-color: rgba(255, 255, 255, 0.60);
    --get-help-button-bg-color: transparent;
    --logout-button-border-color: #545456;
    --logout-button-bg-color: #181818;
    --list-item-border-color: rgba(255, 255, 255, 0.20);
    --toggle-bg-color: #404042;
    --tooltip-border-color: #545456;
    --search-input-border-color: #545456;
    --search-input-placeholder-color: rgba(255, 255, 255, 0.6);
    --arrow-color: rgba(255, 255, 255, 0.60);
  }
}

@media (prefers-color-scheme: light) {
  .system {
    --background: #fff;
    --text-primary: #222;
    --text-secondary: #6c6d75;
    --container-bg: #fff;
    --border-color: #d1d5db;
    --button-bg: #e0e0e0;
    --button-bg-hover: #d0d0d0;
    --toggle-bg: #ccc;
    --toggle-active-bg: #4CAF50;
    --error-bg-connect: #ffcccc;
    --error-text-connect: #d00000;
    --error-bg-proxy: #fff3cd;
    --error-text-proxy: #856404;
    --сonnection-lost: #8b8a86;
    --error-bg-general: #d1ecf1;
    --error-text-general: #0c5460;
    --success-color: #23cb71;
    --error-color: #a31616;
    --input-bg: #f9f9f9;
    --input-text: #333;
    --input-border: #ddd;
    --dropdown-bg: #fff;
    --dropdown-text: #333;
    --dropdown-border: #ddd;
    --dropdown-hover: #f5f5f5;
    --shadow: 0 4px 0px rgba(0, 0, 0, 0.15);
    --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.1);
    --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.1);
    --link-color: #3E9FF8;
    --link-hover: #58afff;
    --select-bg: #fff;
    --select-text: #374151;
    --icon-color: #6c6d75;
    --header-bg: #F7F7F9;
    --footer-bg: #FFF;
    --footer-icon-active: #3E9FF8;
    --get-help-list-item-color: rgba(60, 60, 67, 0.60);
    --get-help-button-bg-color: #fff;
    --logout-button-border-color: rgba(84, 84, 86, 0.34);
    --logout-button-bg-color: transparent;
    --list-item-border-color: rgba(0, 0, 0, 0.08);
    --toggle-bg-color: rgba(0, 0, 0, 0.09);
    --tooltip-border-color: transparent;
    --search-input-border-color: #E3EAF3;
    --search-input-placeholder-color: rgba(60, 60, 67, 0.6);
    --arrow-color: rgba(60, 60, 67, 0.6);
  }
}

body {
  font-family: Roboto, -apple-system, 'Inter', BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 14px;
  line-height: 1.5;
  background: var(--background);
  color: var(--text-primary);
  box-shadow: var(--shadow);
  /* height: 100vh; */
}

#root {
  width: 100%;
  height: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

.vpn-wrapper {
  width: 390px;
  height: 365px;
  max-height: 365px;
  background: var(--background);
  padding: 16px;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;
  margin-right: auto;
  margin-left: auto;

  &.logged-in {
    height: 100vh;
    max-height: 100vh;
    padding: 0;
  }
}

.main-content {
  display: flex;
  flex-direction: column;
  height: 100%;
  flex-grow: 1;
}

.scroll-content {
  height: 100%;
  flex: 1;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  overflow-x: hidden;

  &::-webkit-scrollbar {
    width: 8px;
  }

  &::-webkit-scrollbar-track {
      background: var(--background);
      border-radius: 4px;
  }

  &::-webkit-scrollbar-thumb {
      background: var(--button-bg);
      border-radius: 4px;
}

  &::-webkit-scrollbar-thumb:hover {
      background: var(--button-bg-hover);
  }

  :root {
      .dark & {
          .scroll-content {
              &::-webkit-scrollbar-track {
                  background: transparent;
              }
              &::-webkit-scrollbar-thumb {
                  background: var(--toggle-bg);
              }
              &::-webkit-scrollbar-thumb:hover {
                  background: var(--button-bg-hover);
              }
          }
      }
}
}

.vpn-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 30px;
  background: var(--header-bg);
  padding: 8px 16px;

  &.connected {
    background: var(--success-color);

    .vpn-status {
      opacity: 1;
      color: #fff;
    }
  }

  &.blocked {
    background: var(--сonnection-lost);

    .vpn-status {
      opacity: 1;
      color: #fff;
    }
  }
}

.vpn-header__connected {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;

  .bold {
    font-weight: 600;
  }
}

.vpn-status {
  color: var(--text-primary);
  opacity: 0.5;
  font-size: 12px;
  width: 100%;
  text-align: center;
}

.vpn-title {
  font-size: 20px;
  font-weight: bold;
  color: var(--text-primary);
}

.vpn-icon-button {
  background: transparent;
  border: none;
  color: var(--text-primary);
  cursor: pointer;
}

.vpn-icon-button:disabled {
  cursor: not-allowed;
}

.vpn-info {
  text-align: center;
  margin-bottom: 8px;
}

.vpn-ip {
  font-size: 12px;
  color: var(--text-secondary);
  margin-bottom: 2px;
}

.vpn-location {
  font-size: 16px;
  font-weight: 600;
  margin: 2px 0;
  color: var(--text-primary);
}

.vpn-flag {
  width: 24px;
  height: 18px;
  vertical-align: middle;
  margin-left: 4px;
}

.vpn-controls {
  position: relative;
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
  flex-wrap: wrap;
}

.vpn-button {
  flex: 1;
  padding: 8px;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
  margin: 0 4px;
  background: var(--button-bg);
  color: var(--text-primary);
}

.vpn-pause {
  background: var(--button-bg);
  color: var(--text-primary);
}

.vpn-connect {
  background: var(--toggle-active-bg);
  color: #fff;
}

.vpn-connect:disabled {
  background: var(--button-bg);
  cursor: not-allowed;
}

.vpn-disconnect {
  background: var(--error-color);
  color: #fff;
}

.vpn-disconnect:disabled {
  background: var(--button-bg);
  cursor: not-allowed;
}

.vpn-pause:disabled {
  background: var(--button-bg);
  cursor: not-allowed;
}

.vpn-button:hover:not(:disabled) {
  opacity: 0.9;
}

.vpn-country {
  cursor: pointer;
  padding: 5px;
  border-radius: 50%;
  background: var(--button-bg);
}

.vpn-country.vpn-selected {
  background-color: var(--button-bg-hover);
}

.vpn-country-disabled {
  pointer-events: none;
  opacity: 0.6;
  cursor: not-allowed;
}

.vpn-flag-circle {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-primary);
  border: 0.33px solid #F2F2F7;
}

.vpn-selected {
  background: var(--toggle-active-bg) !important;
  border: 2px solid var(--container-bg);
}

.vpn-dropdown-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: var(--input-bg);
  border: 1px solid var(--input-border);
  cursor: pointer;
  height: 36px;
  padding-left: 8px;
  transition: border-color 0.2s ease;
  border-radius: 5px;
  padding-right: 8px;
}

.vpn-dropdown-toggle:hover {
  border-color: var(--toggle-active-bg);
}

.vpn-selected-country {
  font-weight: 500;
  color: var(--input-text);
}

.vpn-arrow {
  margin-left: 8px;
  font-size: 12px;
  color: var(--text-secondary);
}

.vpn-dropdown {
  background: var(--dropdown-bg);
  border: 1px solid var(--dropdown-border);
  border-radius: 8px;
  z-index: 10;
  margin-top: 5px;
  box-shadow: var(--shadow-light);
  display: flex;
  flex-direction: column;
}

.vpn-dropdown-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  color: var(--input-text);
}

.vpn-dropdown-item:hover {
  background-color: var(--dropdown-hover);
}

.vpn-dropdown-item-disabled {
  pointer-events: none;
  opacity: 0.6;
  cursor: not-allowed;
}

.vpn-item-fastest {
  position: relative;
  padding-bottom: 8px;
  margin-bottom: 8px;
}

.vpn-item-fastest::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--border-color);
}

.vpn-dropdown-info {
  display: flex;
  flex-direction: column;
}

.vpn-dropdown-title {
  font-size: 14px;
  color: var(--dropdown-text);
}

.vpn-dropdown-subtitle {
  font-size: 12px;
  color: var(--text-secondary);
}

.vpn-search-input {
  width: 100%;
  padding: 8px;
  border: none;
  border-bottom: 1px solid var(--input-border);
  border-radius: 4px 4px 0 0;
  font-size: 14px;
  color: var(--input-text);
  background-color: var(--input-bg);
  box-sizing: border-box;
}

.vpn-search-input:focus {
  outline: none;
  border-bottom: 1px solid var(--toggle-active-bg);
  background-color: var(--dropdown-bg);
}

.vpn-search-input::placeholder {
  color: var(--text-secondary);
}

.preload {
  width: 24px;
  height: 24px;
  border-radius: 50%;
}

.pre-connect {
  display: flex;
  align-items: center;
  color: var(--text-secondary);
  font-size: 14px;
  font-weight: 600;
}

.pre-connect .preload {
  margin-right: 10px;
}

.login-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
}

.login-component {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 30px;
  width: 100%;
  max-width: 272px;
  margin: 0 auto;
}

.login-logo {
  width: 140px;
  height: 51px;
}

.login-title {
  font-size: 23px;
  font-weight: 700;
  color: var(--text-primary);
  margin: 0;
  text-align: center;
  line-height: 130%;
  font-family: var(--roboto-condencesd);
}

.login-buttons {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.login-button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 10px;
  border: none;
  border-radius: 8px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 400;
  line-height: 20px;
  cursor: pointer;
  background: var(--link-color);
  color: #fff;
  letter-spacing: -0.43px;
  transition: background-color 0.3s;

  &:hover {
    background-color: #2F93FF;
  }
}

.login-button:disabled {
  opacity: 0.7;
  cursor: not-allowed;
}

.signup-link {
  font-size: 16px;
  line-height: 22px;
  color: var(--link-color);
  text-decoration: none;
  transition: color 0.2s ease;
}

.signup-link:hover {
  color: var(--link-hover);
  text-decoration: underline;
}

.bottom-menu {
  display: flex;
  justify-content: space-around;
  align-items: center;
  background: var(--background);
  padding: 8px 0;
  border-top: 1px solid var(--border-color);
  width: 100%;
  border-bottom-left-radius: 12px;
  border-bottom-right-radius: 12px;
  box-shadow: var(--shadow-bottom);
  margin-top: auto;
}

.menu-button {
  flex: 1;
  padding: 8px;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  color: var(--text-secondary);
  transition: color 0.3s ease, transform 0.2s ease;
}

.settings-container {
  background: var(--container-bg);
  border-radius: 8px;
  box-shadow: var(--shadow-light);
  padding: 16px;
}

.settings-container h2 {
  margin-bottom: 16px;
  color: var(--text-primary);
}

.settings-container .settings-item {
  border: 1px solid var(--border-color);
  background: var(--container-bg);
  border-radius: 8px;
  padding: 12px;
  display: flex;
  align-items: center;
  cursor: pointer;
  transition: background-color 0.2s ease;
  margin-bottom: 8px;
}

.settings-container .settings-item:hover {
  background-color: var(--button-bg-hover);
}

.settings-container .settings-item:last-child {
  margin-bottom: 0;
}

.settings-container .icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-right: 16px;
  color: var(--icon-color);
}

.settings-container .content {
  flex: 1;
}

.settings-container .content .title {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
}

.settings-container .content .description {
  font-size: 12px;
  color: var(--text-secondary);
  margin-top: 4px;
}

.settings-container .arrow {
  width: 24px;
  height: 24px;
  transform: rotate(-90deg);
}

.connection-container {
  background: var(--container-bg);
  border-radius: 8px;
  box-shadow: var(--shadow-light);
  padding: 16px;
}

.connection-container .header {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  cursor: pointer;
}

.connection-container .header .back-button {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
}

.connection-container .header .back-button:hover svg {
  color: var(--text-primary);
}

.connection-container .header .title {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
}

.connection-container .header .status {
  font-size: 14px;
  font-weight: 600;
  color: var(--success-color);
}

.connection-container .header .status.red {
  font-size: 14px;
  font-weight: 600;
  color: var(--error-color);
}

.connection-container .connection-item {
  border: 1px solid var(--border-color);
  background: var(--container-bg);
  border-radius: 8px;
  padding: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  transition: background-color 0.2s ease;
  margin-bottom: 8px;
  position: relative;
}

.connection-container .connection-item:hover {
  background-color: var(--button-bg-hover);
}

.connection-container .icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-right: 16px;
  color: var(--icon-color);
}

.connection-container .content {
  flex: 1;
}

.connection-container .content .title {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
}

.connection-container .content .description {
  font-size: 12px;
  color: var(--text-secondary);
  margin-top: 4px;
}

.connection-container .toggle {
  width: 40px;
  height: 24px;
  background-color: var(--toggle-bg);
  color: var(--text-secondary);
  border-radius: 9999px;
  padding: 4px;
  position: relative;
  cursor: pointer;
}

.connection-container .toggle.active {
  background-color: var(--toggle-active-bg);
}

.connection-container .toggle.active .thumb {
  transform: translateX(16px);
}
.connection-container .toggle.active .pre-connect {
  transform: translateX(16px);
}

.connection-container .arrow {
  width: 24px;
  height: 24px;
  transform: rotate(-90deg);
}

.w-10 {
  width: 40px;
}

.h-6 {
  height: 24px;
}

.bg-gray-300 {
  background-color: var(--toggle-bg);
}

.rounded-full {
  border-radius: 9999px;
}

.p-1 {
  padding: 4px;
}

.w-4 {
  width: 16px;
}

.h-4 {
  height: 16px;
}

.bg-white {
  background-color: #fff;
}

.transition-transform {
  transition-property: transform;
}

.duration-200 {
  transition-duration: 200ms;
}

.translate-x-4 {
  transform: translateX(16px);
}

.translate-x-0 {
  transform: translateX(0);
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.toggle {
  width: 40px;
  height: 24px;
  background-color: var(--toggle-bg);
  border-radius: 12px;
  position: relative;
  cursor: pointer;
  transition: background-color 0.3s;
  display: flex;
  align-items: center;
}

.toggle.active {
  background-color: var(--toggle-active-bg);
}

.thumb {
  width: 20px;
  height: 20px;
  background-color: white;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  left: 2px;
  transition: transform 0.3s ease;
}

.toggle.active .thumb {
  transform: translateX(16px);
}

.toggle.active .pre-connect {
  transform: translateX(16px);
}

.general-item .toggle {
  flex-shrink: 0;
}

.general-settings-container {
  background: var(--container-bg);
  border-radius: 8px;
  box-shadow: var(--shadow-light);
  padding: 16px;
}

.general-settings-container .header {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  cursor: pointer;
}

.general-settings-container .header .back-button {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-right: 8px;
}

.general-settings-container .header .back-button:hover svg {
  color: var(--text-primary);
}

.general-settings-container .header .title {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
}

.general-settings-container .general-item {
  border: 1px solid var(--border-color);
  background: var(--container-bg);
  border-radius: 8px;
  padding: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transition: background-color 0.2s ease;
  margin-bottom: 8px;
}

.general-settings-container .general-item:hover {
  background-color: var(--button-bg-hover);
}

.general-settings-container .general-item:last-child {
  margin-bottom: 0;
}

.general-settings-container .general-item.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.general-settings-container .icon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  margin-right: 16px;
  color: var(--icon-color);
}

.general-settings-container .content {
  flex: 1;
}

.general-settings-container .content .title {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
}

.general-settings-container .content .description {
  font-size: 12px;
  color: var(--text-secondary);
  margin-top: 4px;
}

.general-settings-container .select {
  padding: 4px 8px;
  border: 1px solid var(--border-color);
  border-radius: 6px;
  font-size: 14px;
  color: var(--select-text);
  background: var(--select-bg);
  cursor: pointer;
  transition: border-color 0.2s ease;
}

.general-settings-container .select:hover {
  border-color: var(--toggle-active-bg);
}

.general-settings-container .action-button {
  padding: 8px 16px;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
  background: var(--toggle-active-bg);
  color: #fff;
  margin-left: 5px;
}

.general-settings-container .action-button:disabled {
  background: var(--button-bg);
  cursor: not-allowed;
}

.general-settings-container .action-button:hover:not(:disabled) {
  opacity: 0.9;
}

.general-settings-container .user-info {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--border-color);
}

.general-settings-container .user-info .title {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}

.general-settings-container .user-info .email,
.general-settings-container .user-info .subscription {
  font-size: 12px;
  color: var(--text-secondary);
  margin-bottom: 4px;
}

.general-settings-container .logout-button {
  width: 100%;
  padding: 8px;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
  background: var(--error-color);
  color: #fff;
  margin-top: 12px;
}

.general-settings-container .logout-button:hover {
  opacity: 0.9;
}

.settings-container,
.connection-container,
.general-settings-container {
  padding-bottom: 60px;
}

.split-tunneling-section {
  padding: 12px;
  background: var(--container-bg);
  border: 1px solid var(--border-color);
  border-radius: 8px;
  margin-top: 8px;
  margin-bottom: 8px;
}

.rotate-180 {
  transform: rotate(180deg);
}

.refer-a-friend-container {
  background: var(--container-bg);
  border-radius: 8px;
  box-shadow: var(--shadow-light);
  padding: 16px;
}

.refer-a-friend-container .header {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
  cursor: pointer;
}

.refer-a-friend-container .header .back-button {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-right: 8px;
}

.refer-a-friend-container .header .back-button:hover svg {
  color: var(--text-primary);
}

.refer-a-friend-container .header .title {
  font-size: 20px;
  font-weight: 600;
  color: var(--text-primary);
}

.refer-a-friend-container .highlight-text {
  font-weight: bold;
  font-size: 22px;
  color: var(--text-primary);
  text-align: center;
  margin-bottom: 20px;
}

.refer-a-friend-container .description {
  color: var(--text-primary);
  line-height: 1.5;
  margin-bottom: 25px;
}

.refer-a-friend-container .link-container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}

.refer-a-friend-container .link-input {
  flex: 1;
  padding: 10px;
  border: 1px solid var(--input-border);
  border-radius: 5px;
  font-size: 14px;
  color: var(--input-text);
  background: var(--input-bg);
}

.refer-a-friend-container .copy-button {
  padding: 10px 20px;
  background-color: var(--toggle-active-bg);
  color: #fff;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  transition: background-color 0.3s;
  width: 100%;
}

.refer-a-friend-container .copy-button:hover {
  background-color: var(--button-bg-hover);
}

.refer-a-friend-container .copy-button.copied {
  background-color: var(--toggle-active-bg);
}

.formatTimeClass {
  color: var(--text-primary);
  width: 100%;
  margin: 4px;
}

.pause-options {
  display: flex;
  flex-direction: column;
  gap: 12px;
  border-radius: 6px;
  padding: 10px;
  box-shadow: var(--shadow);
  background: var(--background);
  position: absolute;
  top: 100%;
  z-index: 1000;
}

.pause-options .select {
  padding: 4px 8px;
  border: 1px solid var(--border-color);
  border-radius: 6px;
  font-size: 14px;
  color: var(--select-text);
  background: var(--select-bg);
  cursor: pointer;
  transition: border-color 0.2s ease;
}

.pause-options .select:hover {
  border-color: var(--toggle-active-bg);
}

.pause-options .action-button {
  padding: 8px 16px;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
  background: var(--toggle-active-bg);
  color: #fff;
}

.pause-options .action-button:disabled {
  background: var(--button-bg);
  cursor: not-allowed;
}

.pause-options .action-button:hover:not(:disabled) {
  opacity: 0.9;
}

.login-error {
  margin-top: 15px;
}

.error-message-wrapper {
  padding: 15px 15px 0;
}

.clear-error-btn {
  margin-left: 10px;
  padding: 5px 10px;
  background-color: var(--button-bg);
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.clear-error-btn:hover {
  background-color: var(--button-bg-hover);
}

.vpn-dropdown-item {
  display: flex;
  align-items: center;
  padding: 8px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.vpn-dropdown-item:hover {
  background-color: var(--dropdown-hover);
}

.vpn-dropdown-item-content {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-grow: 1;
}

.vpn-dropdown-info {
  display: flex;
  align-items: start;
  gap: 4px;
}

.vpn-dropdown-title {
  font-size: 14px;
  color: var(--dropdown-text);
}

.vpn-dropdown-subtitle {
  font-size: 12px;
  color: var(--text-secondary);
}

.dots-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  cursor: pointer;
  padding: 2px;
  margin-left: 8px;
  color: var(--input-bg);
}

.dots-container:hover {
  background-color: var(--dropdown-hover);
}

.dots-icon {
  width: 24px;
  height: 24px;
  color: var(--icon-color);
}

.dark .dots-icon {
  color: #fff;
}

.back-button {
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 0;
  margin-right: 8px;
  color: var(--input-text);
}

.vpn-interruption-message {
  background: var(--container-bg);
  border-radius: 8px;
  box-shadow: var(--shadow-light);
  padding: 16px;
  text-align: center;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.vpn-interruption-message .interruption-icon {
  width: 48px;
  height: 48px;
  margin: 0 auto;
  color: var(--error-color);
}

.vpn-interruption-message h3 {
  font-size: 18px;
  font-weight: 600;
  color: var(--text-primary);
  margin: 0;
}

.vpn-interruption-message p {
  font-size: 14px;
  color: var(--text-secondary);
  margin: 0;
}

.vpn-interruption-message .manage-extensions-btn,
.vpn-interruption-message .clear-error-btn {
  padding: 8px 16px;
  border: none;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  transition: background-color 0.2s ease;
  width: 100%;
  margin-top: 8px;
}

.vpn-interruption-message .manage-extensions-btn {
  background: var(--toggle-active-bg);
  color: #fff;
}

.vpn-interruption-message .manage-extensions-btn:hover:not(:disabled) {
  opacity: 0.9;
}

.vpn-interruption-message .clear-error-btn {
  background: var(--button-bg);
  color: #fff;
}

.vpn-interruption-message .clear-error-btn:hover:not(:disabled) {
  background: var(--button-bg-hover);
}

.vpn-flag-large {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-primary);
}

.vpn-dropdown::-webkit-scrollbar {
  width: 8px;
}

.vpn-dropdown::-webkit-scrollbar-track {
  background: var(--dropdown-bg);
  border-radius: 4px;
}

.vpn-dropdown::-webkit-scrollbar-thumb {
  background: var(--button-bg);
  border-radius: 4px;
}

.vpn-dropdown::-webkit-scrollbar-thumb:hover {
  background: var(--button-bg-hover);
}

.dark .vpn-dropdown::-webkit-scrollbar-track {
  background: var(--container-bg);
}

.dark .vpn-dropdown::-webkit-scrollbar-thumb {
  background: var(--toggle-bg);
}

.dark .vpn-dropdown::-webkit-scrollbar-thumb:hover {
  background: var(--button-bg-hover);
}

.vpn-countries-inner {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
}

.vpn-dropdown.full-width {
  width: 100%;
  max-width: 400px;
  box-sizing: border-box;
  padding: 0;
}

.vpn-dropdown-item {
  display: flex;
  align-items: center;
  padding: 8px 12px;
  cursor: pointer;
  transition: background-color 0.2s ease;
  color: var(--input-text);
  width: 100%;
}

.mb-10 {
  margin-bottom: 10px;
}

.vpn-selected-country-container {
  display: contents;
}

.main-toggle-wrapper {
  display: flex;
  flex-direction: column;
  align-items: flex-end
}

.toggle-wrapper {
  margin-bottom: 4px;
}
.arrow-wrapper {
  position: absolute;
  bottom: 8px;
  right: 8px;
}

.country-not-found {
  display: flex;
  justify-content: center;
  margin-top: 15px;
}
.country-not-found .description {
  font-size: 14px;
  color: var(--text-secondary);
}
`, "",{"version":3,"sources":["webpack://./css/style.css"],"names":[],"mappings":"AAAA;EACE,SAAS;EACT,UAAU;EACV,sBAAsB;AACxB;;AAEA;EACE,+BAA+B;EAC/B,+DAAuE;EACvE,mBAAmB;EACnB,kBAAkB;AACpB;;AAEA;EACE,+BAA+B;EAC/B,+DAAoE;EACpE,gBAAgB;EAChB,kBAAkB;AACpB;;AAEA;EACE,+BAA+B;EAC/B,+DAAwE;EACxE,gBAAgB;EAChB,kBAAkB;AACpB;;;;AAIA;;EAEE,mHAAmH;EACnH,kBAAkB;EAClB,oBAAoB;EACpB,yBAAyB;EACzB,oBAAoB;EACpB,uBAAuB;EACvB,oBAAoB;EACpB,0BAA0B;EAC1B,iBAAiB;EACjB,2BAA2B;EAC3B,2BAA2B;EAC3B,6BAA6B;EAC7B,yBAAyB;EACzB,2BAA2B;EAC3B,0BAA0B;EAC1B,2BAA2B;EAC3B,6BAA6B;EAC7B,wBAAwB;EACxB,sBAAsB;EACtB,mBAAmB;EACnB,kBAAkB;EAClB,oBAAoB;EACpB,mBAAmB;EACnB,qBAAqB;EACrB,uBAAuB;EACvB,yBAAyB;EACzB,uCAAuC;EACvC,4CAA4C;EAC5C,8CAA8C;EAC9C,qBAAqB;EACrB,qBAAqB;EACrB,iBAAiB;EACjB,sBAAsB;EACtB,qBAAqB;EACrB,oBAAoB;EACpB,iBAAiB;EACjB,6BAA6B;EAC7B,kDAAkD;EAClD,gCAAgC;EAChC,oDAAoD;EACpD,qCAAqC;EACrC,kBAAkB;EAClB,uBAAuB;EACvB,6BAA6B;EAC7B,2BAA2B;EAC3B,yBAAyB;EACzB,0BAA0B;EAC1B,6CAA6C;EAC7C,sCAAsC;EACtC,mCAAmC;EACnC,oCAAoC;EACpC,uDAAuD;EACvD,oCAAoC;AACtC;;AAEA;EACE,kBAAkB;EAClB,oBAAoB;EACpB,yBAAyB;EACzB,uBAAuB;EACvB,oBAAoB;EACpB,iBAAiB;EACjB,uBAAuB;EACvB,oBAAoB;EACpB,2BAA2B;EAC3B,2BAA2B;EAC3B,6BAA6B;EAC7B,yBAAyB;EACzB,2BAA2B;EAC3B,0BAA0B;EAC1B,2BAA2B;EAC3B,6BAA6B;EAC7B,wBAAwB;EACxB,sBAAsB;EACtB,mBAAmB;EACnB,qBAAqB;EACrB,oBAAoB;EACpB,sBAAsB;EACtB,wBAAwB;EACxB,uBAAuB;EACvB,yBAAyB;EACzB,sCAAsC;EACtC,4CAA4C;EAC5C,8CAA8C;EAC9C,qBAAqB;EACrB,qBAAqB;EACrB,oBAAoB;EACpB,sBAAsB;EACtB,qBAAqB;EACrB,oBAAoB;EACpB,oBAAoB;EACpB,6BAA6B;EAC7B,qDAAqD;EACrD,uCAAuC;EACvC,qCAAqC;EACrC,iCAAiC;EACjC,kBAAkB;EAClB,uBAAuB;EACvB,6CAA6C;EAC7C,0BAA0B;EAC1B,yBAAyB;EACzB,uBAAuB;EACvB,mDAAmD;EACnD,0BAA0B;EAC1B,+BAA+B;EAC/B,oCAAoC;EACpC,0DAA0D;EAC1D,wCAAwC;AAC1C;;AAEA;EACE;IACE,kBAAkB;IAClB,oBAAoB;IACpB,yBAAyB;IACzB,uBAAuB;IACvB,oBAAoB;IACpB,iBAAiB;IACjB,uBAAuB;IACvB,oBAAoB;IACpB,2BAA2B;IAC3B,2BAA2B;IAC3B,6BAA6B;IAC7B,yBAAyB;IACzB,2BAA2B;IAC3B,0BAA0B;IAC1B,2BAA2B;IAC3B,6BAA6B;IAC7B,wBAAwB;IACxB,sBAAsB;IACtB,mBAAmB;IACnB,qBAAqB;IACrB,oBAAoB;IACpB,sBAAsB;IACtB,wBAAwB;IACxB,uBAAuB;IACvB,yBAAyB;IACzB,sCAAsC;IACtC,4CAA4C;IAC5C,8CAA8C;IAC9C,qBAAqB;IACrB,qBAAqB;IACrB,oBAAoB;IACpB,sBAAsB;IACtB,qBAAqB;IACrB,oBAAoB;IACpB,oBAAoB;IACpB,6BAA6B;IAC7B,qDAAqD;IACrD,uCAAuC;IACvC,qCAAqC;IACrC,iCAAiC;IACjC,mDAAmD;IACnD,0BAA0B;IAC1B,+BAA+B;IAC/B,oCAAoC;IACpC,0DAA0D;IAC1D,wCAAwC;EAC1C;AACF;;AAEA;EACE;IACE,kBAAkB;IAClB,oBAAoB;IACpB,yBAAyB;IACzB,oBAAoB;IACpB,uBAAuB;IACvB,oBAAoB;IACpB,0BAA0B;IAC1B,iBAAiB;IACjB,2BAA2B;IAC3B,2BAA2B;IAC3B,6BAA6B;IAC7B,yBAAyB;IACzB,2BAA2B;IAC3B,0BAA0B;IAC1B,2BAA2B;IAC3B,6BAA6B;IAC7B,wBAAwB;IACxB,sBAAsB;IACtB,mBAAmB;IACnB,kBAAkB;IAClB,oBAAoB;IACpB,mBAAmB;IACnB,qBAAqB;IACrB,uBAAuB;IACvB,yBAAyB;IACzB,uCAAuC;IACvC,4CAA4C;IAC5C,8CAA8C;IAC9C,qBAAqB;IACrB,qBAAqB;IACrB,iBAAiB;IACjB,sBAAsB;IACtB,qBAAqB;IACrB,oBAAoB;IACpB,iBAAiB;IACjB,6BAA6B;IAC7B,kDAAkD;IAClD,gCAAgC;IAChC,oDAAoD;IACpD,qCAAqC;IACrC,6CAA6C;IAC7C,sCAAsC;IACtC,mCAAmC;IACnC,oCAAoC;IACpC,uDAAuD;IACvD,oCAAoC;EACtC;AACF;;AAEA;EACE,uFAAuF;EACvF,eAAe;EACf,gBAAgB;EAChB,6BAA6B;EAC7B,0BAA0B;EAC1B,yBAAyB;EACzB,mBAAmB;AACrB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,gBAAgB;EAChB,sBAAsB;AACxB;;AAEA;EACE,YAAY;EACZ,aAAa;EACb,iBAAiB;EACjB,6BAA6B;EAC7B,aAAa;EACb,aAAa;EACb,sBAAsB;EACtB,gBAAgB;EAChB,kBAAkB;EAClB,kBAAkB;EAClB,iBAAiB;;EAEjB;IACE,aAAa;IACb,iBAAiB;IACjB,UAAU;EACZ;AACF;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,YAAY;EACZ,YAAY;AACd;;AAEA;EACE,YAAY;EACZ,OAAO;EACP,aAAa;EACb,sBAAsB;EACtB,gBAAgB;EAChB,kBAAkB;;EAElB;IACE,UAAU;EACZ;;EAEA;MACI,6BAA6B;MAC7B,kBAAkB;EACtB;;EAEA;MACI,4BAA4B;MAC5B,kBAAkB;AACxB;;EAEE;MACI,kCAAkC;EACtC;;EAEA;MACI;UACI;cACI;kBACI,uBAAuB;cAC3B;cACA;kBACI,4BAA4B;cAChC;cACA;kBACI,kCAAkC;cACtC;UACJ;MACJ;AACN;AACA;;AAEA;EACE,aAAa;EACb,uBAAuB;EACvB,mBAAmB;EACnB,YAAY;EACZ,4BAA4B;EAC5B,iBAAiB;;EAEjB;IACE,gCAAgC;;IAEhC;MACE,UAAU;MACV,WAAW;IACb;EACF;;EAEA;IACE,kCAAkC;;IAElC;MACE,UAAU;MACV,WAAW;IACb;EACF;AACF;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,WAAW;;EAEX;IACE,gBAAgB;EAClB;AACF;;AAEA;EACE,0BAA0B;EAC1B,YAAY;EACZ,eAAe;EACf,WAAW;EACX,kBAAkB;AACpB;;AAEA;EACE,eAAe;EACf,iBAAiB;EACjB,0BAA0B;AAC5B;;AAEA;EACE,uBAAuB;EACvB,YAAY;EACZ,0BAA0B;EAC1B,eAAe;AACjB;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,kBAAkB;EAClB,kBAAkB;AACpB;;AAEA;EACE,eAAe;EACf,4BAA4B;EAC5B,kBAAkB;AACpB;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,aAAa;EACb,0BAA0B;AAC5B;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,sBAAsB;EACtB,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,aAAa;EACb,8BAA8B;EAC9B,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,OAAO;EACP,YAAY;EACZ,YAAY;EACZ,kBAAkB;EAClB,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,sCAAsC;EACtC,aAAa;EACb,4BAA4B;EAC5B,0BAA0B;AAC5B;;AAEA;EACE,4BAA4B;EAC5B,0BAA0B;AAC5B;;AAEA;EACE,mCAAmC;EACnC,WAAW;AACb;;AAEA;EACE,4BAA4B;EAC5B,mBAAmB;AACrB;;AAEA;EACE,8BAA8B;EAC9B,WAAW;AACb;;AAEA;EACE,4BAA4B;EAC5B,mBAAmB;AACrB;;AAEA;EACE,4BAA4B;EAC5B,mBAAmB;AACrB;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,eAAe;EACf,YAAY;EACZ,kBAAkB;EAClB,4BAA4B;AAC9B;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,oBAAoB;EACpB,YAAY;EACZ,mBAAmB;AACrB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,0BAA0B;EAC1B,4BAA4B;AAC9B;;AAEA;EACE,8CAA8C;EAC9C,qCAAqC;AACvC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,2BAA2B;EAC3B,qCAAqC;EACrC,eAAe;EACf,YAAY;EACZ,iBAAiB;EACjB,kCAAkC;EAClC,kBAAkB;EAClB,kBAAkB;AACpB;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,gBAAgB;EAChB,wBAAwB;AAC1B;;AAEA;EACE,gBAAgB;EAChB,eAAe;EACf,4BAA4B;AAC9B;;AAEA;EACE,8BAA8B;EAC9B,wCAAwC;EACxC,kBAAkB;EAClB,WAAW;EACX,eAAe;EACf,+BAA+B;EAC/B,aAAa;EACb,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,QAAQ;EACR,YAAY;EACZ,eAAe;EACf,sCAAsC;EACtC,wBAAwB;AAC1B;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,oBAAoB;EACpB,YAAY;EACZ,mBAAmB;AACrB;;AAEA;EACE,kBAAkB;EAClB,mBAAmB;EACnB,kBAAkB;AACpB;;AAEA;EACE,WAAW;EACX,kBAAkB;EAClB,SAAS;EACT,OAAO;EACP,WAAW;EACX,WAAW;EACX,qCAAqC;AACvC;;AAEA;EACE,aAAa;EACb,sBAAsB;AACxB;;AAEA;EACE,eAAe;EACf,2BAA2B;AAC7B;;AAEA;EACE,eAAe;EACf,4BAA4B;AAC9B;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,YAAY;EACZ,4CAA4C;EAC5C,0BAA0B;EAC1B,eAAe;EACf,wBAAwB;EACxB,iCAAiC;EACjC,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,gDAAgD;EAChD,oCAAoC;AACtC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,kBAAkB;AACpB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,4BAA4B;EAC5B,eAAe;EACf,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;AACpB;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,uBAAuB;EACvB,mBAAmB;EACnB,YAAY;AACd;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,uBAAuB;EACvB,SAAS;EACT,WAAW;EACX,gBAAgB;EAChB,cAAc;AAChB;;AAEA;EACE,YAAY;EACZ,YAAY;AACd;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;EAC1B,SAAS;EACT,kBAAkB;EAClB,iBAAiB;EACjB,qCAAqC;AACvC;;AAEA;EACE,WAAW;EACX,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,SAAS;AACX;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,WAAW;EACX,aAAa;EACb,YAAY;EACZ,kBAAkB;EAClB,oBAAoB;EACpB,eAAe;EACf,gBAAgB;EAChB,iBAAiB;EACjB,eAAe;EACf,6BAA6B;EAC7B,WAAW;EACX,uBAAuB;EACvB,iCAAiC;;EAEjC;IACE,yBAAyB;EAC3B;AACF;;AAEA;EACE,YAAY;EACZ,mBAAmB;AACrB;;AAEA;EACE,eAAe;EACf,iBAAiB;EACjB,wBAAwB;EACxB,qBAAqB;EACrB,2BAA2B;AAC7B;;AAEA;EACE,wBAAwB;EACxB,0BAA0B;AAC5B;;AAEA;EACE,aAAa;EACb,6BAA6B;EAC7B,mBAAmB;EACnB,6BAA6B;EAC7B,cAAc;EACd,yCAAyC;EACzC,WAAW;EACX,+BAA+B;EAC/B,gCAAgC;EAChC,gCAAgC;EAChC,gBAAgB;AAClB;;AAEA;EACE,OAAO;EACP,YAAY;EACZ,uBAAuB;EACvB,YAAY;EACZ,eAAe;EACf,aAAa;EACb,sBAAsB;EACtB,mBAAmB;EACnB,4BAA4B;EAC5B,gDAAgD;AAClD;;AAEA;EACE,+BAA+B;EAC/B,kBAAkB;EAClB,+BAA+B;EAC/B,aAAa;AACf;;AAEA;EACE,mBAAmB;EACnB,0BAA0B;AAC5B;;AAEA;EACE,qCAAqC;EACrC,+BAA+B;EAC/B,kBAAkB;EAClB,aAAa;EACb,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,sCAAsC;EACtC,kBAAkB;AACpB;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,kBAAkB;EAClB,wBAAwB;AAC1B;;AAEA;EACE,OAAO;AACT;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;AAC5B;;AAEA;EACE,eAAe;EACf,4BAA4B;EAC5B,eAAe;AACjB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,yBAAyB;AAC3B;;AAEA;EACE,+BAA+B;EAC/B,kBAAkB;EAClB,+BAA+B;EAC/B,aAAa;AACf;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,uBAAuB;EACvB,YAAY;EACZ,eAAe;EACf,UAAU;AACZ;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;AAC5B;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,2BAA2B;AAC7B;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,yBAAyB;AAC3B;;AAEA;EACE,qCAAqC;EACrC,+BAA+B;EAC/B,kBAAkB;EAClB,aAAa;EACb,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,eAAe;EACf,sCAAsC;EACtC,kBAAkB;EAClB,kBAAkB;AACpB;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,kBAAkB;EAClB,wBAAwB;AAC1B;;AAEA;EACE,OAAO;AACT;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;AAC5B;;AAEA;EACE,eAAe;EACf,4BAA4B;EAC5B,eAAe;AACjB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,kCAAkC;EAClC,4BAA4B;EAC5B,qBAAqB;EACrB,YAAY;EACZ,kBAAkB;EAClB,eAAe;AACjB;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,2BAA2B;AAC7B;AACA;EACE,2BAA2B;AAC7B;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,yBAAyB;AAC3B;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,qBAAqB;AACvB;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,sBAAsB;AACxB;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,wBAAwB;AAC1B;;AAEA;EACE,kBAAkB;EAClB,UAAU;EACV,WAAW;EACX,UAAU;EACV,YAAY;EACZ,gBAAgB;EAChB,sBAAsB;EACtB,SAAS;AACX;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,kCAAkC;EAClC,mBAAmB;EACnB,kBAAkB;EAClB,eAAe;EACf,iCAAiC;EACjC,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,uBAAuB;EACvB,kBAAkB;EAClB,kBAAkB;EAClB,QAAQ;EACR,SAAS;EACT,+BAA+B;AACjC;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,2BAA2B;AAC7B;;AAEA;EACE,cAAc;AAChB;;AAEA;EACE,+BAA+B;EAC/B,kBAAkB;EAClB,+BAA+B;EAC/B,aAAa;AACf;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,uBAAuB;EACvB,YAAY;EACZ,eAAe;EACf,UAAU;EACV,iBAAiB;AACnB;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;AAC5B;;AAEA;EACE,qCAAqC;EACrC,+BAA+B;EAC/B,kBAAkB;EAClB,aAAa;EACb,aAAa;EACb,mBAAmB;EACnB,8BAA8B;EAC9B,sCAAsC;EACtC,kBAAkB;AACpB;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,YAAY;EACZ,mBAAmB;AACrB;;AAEA;EACE,cAAc;EACd,WAAW;EACX,YAAY;EACZ,kBAAkB;EAClB,wBAAwB;AAC1B;;AAEA;EACE,OAAO;AACT;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;AAC5B;;AAEA;EACE,eAAe;EACf,4BAA4B;EAC5B,eAAe;AACjB;;AAEA;EACE,gBAAgB;EAChB,qCAAqC;EACrC,kBAAkB;EAClB,eAAe;EACf,yBAAyB;EACzB,4BAA4B;EAC5B,eAAe;EACf,kCAAkC;AACpC;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,iBAAiB;EACjB,YAAY;EACZ,kBAAkB;EAClB,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,sCAAsC;EACtC,mCAAmC;EACnC,WAAW;EACX,gBAAgB;AAClB;;AAEA;EACE,4BAA4B;EAC5B,mBAAmB;AACrB;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,gBAAgB;EAChB,iBAAiB;EACjB,yCAAyC;AAC3C;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;EAC1B,kBAAkB;AACpB;;AAEA;;EAEE,eAAe;EACf,4BAA4B;EAC5B,kBAAkB;AACpB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,YAAY;EACZ,kBAAkB;EAClB,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,sCAAsC;EACtC,8BAA8B;EAC9B,WAAW;EACX,gBAAgB;AAClB;;AAEA;EACE,YAAY;AACd;;AAEA;;;EAGE,oBAAoB;AACtB;;AAEA;EACE,aAAa;EACb,+BAA+B;EAC/B,qCAAqC;EACrC,kBAAkB;EAClB,eAAe;EACf,kBAAkB;AACpB;;AAEA;EACE,yBAAyB;AAC3B;;AAEA;EACE,+BAA+B;EAC/B,kBAAkB;EAClB,+BAA+B;EAC/B,aAAa;AACf;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,mBAAmB;EACnB,eAAe;AACjB;;AAEA;EACE,uBAAuB;EACvB,YAAY;EACZ,eAAe;EACf,UAAU;EACV,iBAAiB;AACnB;;AAEA;EACE,0BAA0B;AAC5B;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;AAC5B;;AAEA;EACE,iBAAiB;EACjB,eAAe;EACf,0BAA0B;EAC1B,kBAAkB;EAClB,mBAAmB;AACrB;;AAEA;EACE,0BAA0B;EAC1B,gBAAgB;EAChB,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,eAAe;EACf,SAAS;EACT,gBAAgB;AAClB;;AAEA;EACE,OAAO;EACP,aAAa;EACb,qCAAqC;EACrC,kBAAkB;EAClB,eAAe;EACf,wBAAwB;EACxB,2BAA2B;AAC7B;;AAEA;EACE,kBAAkB;EAClB,yCAAyC;EACzC,WAAW;EACX,YAAY;EACZ,kBAAkB;EAClB,eAAe;EACf,iCAAiC;EACjC,WAAW;AACb;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,yCAAyC;AAC3C;;AAEA;EACE,0BAA0B;EAC1B,WAAW;EACX,WAAW;AACb;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB,SAAS;EACT,kBAAkB;EAClB,aAAa;EACb,yBAAyB;EACzB,6BAA6B;EAC7B,kBAAkB;EAClB,SAAS;EACT,aAAa;AACf;;AAEA;EACE,gBAAgB;EAChB,qCAAqC;EACrC,kBAAkB;EAClB,eAAe;EACf,yBAAyB;EACzB,4BAA4B;EAC5B,eAAe;EACf,kCAAkC;AACpC;;AAEA;EACE,qCAAqC;AACvC;;AAEA;EACE,iBAAiB;EACjB,YAAY;EACZ,kBAAkB;EAClB,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,sCAAsC;EACtC,mCAAmC;EACnC,WAAW;AACb;;AAEA;EACE,4BAA4B;EAC5B,mBAAmB;AACrB;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,oBAAoB;AACtB;;AAEA;EACE,iBAAiB;EACjB,iBAAiB;EACjB,kCAAkC;EAClC,WAAW;EACX,YAAY;EACZ,kBAAkB;EAClB,eAAe;AACjB;;AAEA;EACE,wCAAwC;AAC1C;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,YAAY;EACZ,eAAe;EACf,sCAAsC;AACxC;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,QAAQ;EACR,YAAY;AACd;;AAEA;EACE,aAAa;EACb,kBAAkB;EAClB,QAAQ;AACV;;AAEA;EACE,eAAe;EACf,2BAA2B;AAC7B;;AAEA;EACE,eAAe;EACf,4BAA4B;AAC9B;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,WAAW;EACX,YAAY;EACZ,eAAe;EACf,YAAY;EACZ,gBAAgB;EAChB,sBAAsB;AACxB;;AAEA;EACE,uCAAuC;AACzC;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,wBAAwB;AAC1B;;AAEA;EACE,WAAW;AACb;;AAEA;EACE,uBAAuB;EACvB,YAAY;EACZ,eAAe;EACf,UAAU;EACV,iBAAiB;EACjB,wBAAwB;AAC1B;;AAEA;EACE,+BAA+B;EAC/B,kBAAkB;EAClB,+BAA+B;EAC/B,aAAa;EACb,kBAAkB;EAClB,aAAa;EACb,sBAAsB;EACtB,SAAS;AACX;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,cAAc;EACd,yBAAyB;AAC3B;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,0BAA0B;EAC1B,SAAS;AACX;;AAEA;EACE,eAAe;EACf,4BAA4B;EAC5B,SAAS;AACX;;AAEA;;EAEE,iBAAiB;EACjB,YAAY;EACZ,kBAAkB;EAClB,eAAe;EACf,gBAAgB;EAChB,eAAe;EACf,sCAAsC;EACtC,WAAW;EACX,eAAe;AACjB;;AAEA;EACE,mCAAmC;EACnC,WAAW;AACb;;AAEA;EACE,YAAY;AACd;;AAEA;EACE,4BAA4B;EAC5B,WAAW;AACb;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,kBAAkB;EAClB,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,0BAA0B;AAC5B;;AAEA;EACE,UAAU;AACZ;;AAEA;EACE,8BAA8B;EAC9B,kBAAkB;AACpB;;AAEA;EACE,4BAA4B;EAC5B,kBAAkB;AACpB;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,+BAA+B;AACjC;;AAEA;EACE,4BAA4B;AAC9B;;AAEA;EACE,kCAAkC;AACpC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,uBAAuB;AACzB;;AAEA;EACE,WAAW;EACX,gBAAgB;EAChB,sBAAsB;EACtB,UAAU;AACZ;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,iBAAiB;EACjB,eAAe;EACf,sCAAsC;EACtC,wBAAwB;EACxB,WAAW;AACb;;AAEA;EACE,mBAAmB;AACrB;;AAEA;EACE,iBAAiB;AACnB;;AAEA;EACE,aAAa;EACb,sBAAsB;EACtB;AACF;;AAEA;EACE,kBAAkB;AACpB;AACA;EACE,kBAAkB;EAClB,WAAW;EACX,UAAU;AACZ;;AAEA;EACE,aAAa;EACb,uBAAuB;EACvB,gBAAgB;AAClB;AACA;EACE,eAAe;EACf,4BAA4B;AAC9B","sourcesContent":["* {\n  margin: 0;\n  padding: 0;\n  box-sizing: border-box;\n}\n\n@font-face {\n  font-family: \"Roboto Condensed\";\n  src: url(\"../src/fonts/RobotoCondensed-Regular.ttf\") format(\"truetype\");\n  font-weight: normal;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: \"Roboto Condensed\";\n  src: url(\"../src/fonts/RobotoCondensed-Bold.ttf\") format(\"truetype\");\n  font-weight: 700;\n  font-style: normal;\n}\n\n@font-face {\n  font-family: \"Roboto Condensed\";\n  src: url(\"../src/fonts/RobotoCondensed-SemiBold.ttf\") format(\"truetype\");\n  font-weight: 600;\n  font-style: normal;\n}\n\n\n\n:root {\n\n  --roboto-condencesd: \"Roboto Condensed\", Roboto, -apple-system, 'Inter', BlinkMacSystemFont, 'Segoe UI', sans-serif;\n  --background: #fff;\n  --text-primary: #222;\n  --text-secondary: #6c6d75;\n  --container-bg: #fff;\n  --border-color: #d1d5db;\n  --button-bg: #e0e0e0;\n  --button-bg-hover: #d0d0d0;\n  --toggle-bg: #ccc;\n  --toggle-active-bg: #4CAF50;\n  --error-bg-connect: #ffcccc;\n  --error-text-connect: #d00000;\n  --error-bg-proxy: #fff3cd;\n  --error-text-proxy: #856404;\n  --сonnection-lost: #8b8a86;\n  --error-bg-general: #d1ecf1;\n  --error-text-general: #0c5460;\n  --success-color: #23cb71;\n  --error-color: #a31616;\n  --input-bg: #f9f9f9;\n  --input-text: #333;\n  --input-border: #ddd;\n  --dropdown-bg: #fff;\n  --dropdown-text: #333;\n  --dropdown-border: #ddd;\n  --dropdown-hover: #f5f5f5;\n  --shadow: 0 4px 0px rgba(0, 0, 0, 0.15);\n  --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.1);\n  --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.1);\n  --link-color: #3E9FF8;\n  --link-hover: #58afff;\n  --select-bg: #fff;\n  --select-text: #374151;\n  --icon-color: #6c6d75;\n  --header-bg: #F7F7F9;\n  --footer-bg: #FFF;\n  --footer-icon-active: #3E9FF8;\n  --get-help-list-item-color: rgba(60, 60, 67, 0.60);\n  --get-help-button-bg-color: #fff;\n  --logout-button-border-color: rgba(84, 84, 86, 0.34);\n  --logout-button-bg-color: transparent;\n  --title-color:#000;\n  --border-select:#C7D6DB;\n  --text-value-selected:#1D1B20;\n  --text-value-select:#1D1B20;\n  --select-bg-hover:#F7F7F9;\n  --text-label-float:#49454F;\n  --list-item-border-color: rgba(0, 0, 0, 0.08);\n  --toggle-bg-color: rgba(0, 0, 0, 0.09);\n  --tooltip-border-color: transparent;\n  --search-input-border-color: #E3EAF3;\n  --search-input-placeholder-color: rgba(60, 60, 67, 0.6);\n  --arrow-color: rgba(60, 60, 67, 0.6);\n}\n\n.dark {\n  --background: #000;\n  --text-primary: #fff;\n  --text-secondary: #a0a0a0;\n  --container-bg: #2a2a2a;\n  --border-color: #444;\n  --button-bg: #444;\n  --button-bg-hover: #555;\n  --toggle-bg: #a0a0a0;\n  --toggle-active-bg: #4CAF50;\n  --error-bg-connect: #4a0000;\n  --error-text-connect: #ff9999;\n  --error-bg-proxy: #665000;\n  --error-text-proxy: #ffeb99;\n  --сonnection-lost: #8b8a86;\n  --error-bg-general: #0a2c34;\n  --error-text-general: #99d6e1;\n  --success-color: #34c759;\n  --error-color: #e74c3c;\n  --input-bg: #2a2a2a;\n  --input-text: #e0e0e0;\n  --input-border: #444;\n  --dropdown-bg: #2a2a2a;\n  --dropdown-text: #e0e0e0;\n  --dropdown-border: #444;\n  --dropdown-hover: #3a3a3a;\n  --shadow: 0 4px 0px rgba(0, 0, 0, 0.4);\n  --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.3);\n  --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.3);\n  --link-color: #3E9FF8;\n  --link-hover: #58afff;\n  --select-bg: #2a2a2a;\n  --select-text: #e0e0e0;\n  --icon-color: #a0a0a0;\n  --header-bg: #292929;\n  --footer-bg: #292929;\n  --footer-icon-active: #3E9FF8;\n  --get-help-list-item-color: rgba(255, 255, 255, 0.60);\n  --get-help-button-bg-color: transparent;\n  --logout-button-border-color: #545456;\n  --logout-button-bg-color: #181818;\n  --title-color:#fff;\n  --border-select:#404042;\n  --text-value-select:rgba(255, 255, 255, 0.60);\n  --text-value-selected:#fff;\n  --select-bg-hover:#292929;\n  --text-label-float:#FFF;\n  --list-item-border-color: rgba(255, 255, 255, 0.20);\n  --toggle-bg-color: #404042;\n  --tooltip-border-color: #545456;\n  --search-input-border-color: #545456;\n  --search-input-placeholder-color: rgba(255, 255, 255, 0.6);\n  --arrow-color: rgba(255, 255, 255, 0.60);\n}\n\n@media (prefers-color-scheme: dark) {\n  .system {\n    --background: #000;\n    --text-primary: #fff;\n    --text-secondary: #a0a0a0;\n    --container-bg: #2a2a2a;\n    --border-color: #444;\n    --button-bg: #444;\n    --button-bg-hover: #555;\n    --toggle-bg: #a0a0a0;\n    --toggle-active-bg: #4CAF50;\n    --error-bg-connect: #4a0000;\n    --error-text-connect: #ff9999;\n    --error-bg-proxy: #665000;\n    --error-text-proxy: #ffeb99;\n    --сonnection-lost: #8b8a86;\n    --error-bg-general: #0a2c34;\n    --error-text-general: #99d6e1;\n    --success-color: #34c759;\n    --error-color: #e74c3c;\n    --input-bg: #2a2a2a;\n    --input-text: #e0e0e0;\n    --input-border: #444;\n    --dropdown-bg: #2a2a2a;\n    --dropdown-text: #e0e0e0;\n    --dropdown-border: #444;\n    --dropdown-hover: #3a3a3a;\n    --shadow: 0 4px 0px rgba(0, 0, 0, 0.4);\n    --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.3);\n    --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.3);\n    --link-color: #3E9FF8;\n    --link-hover: #58afff;\n    --select-bg: #2a2a2a;\n    --select-text: #e0e0e0;\n    --icon-color: #a0a0a0;\n    --header-bg: #292929;\n    --footer-bg: #292929;\n    --footer-icon-active: #3E9FF8;\n    --get-help-list-item-color: rgba(255, 255, 255, 0.60);\n    --get-help-button-bg-color: transparent;\n    --logout-button-border-color: #545456;\n    --logout-button-bg-color: #181818;\n    --list-item-border-color: rgba(255, 255, 255, 0.20);\n    --toggle-bg-color: #404042;\n    --tooltip-border-color: #545456;\n    --search-input-border-color: #545456;\n    --search-input-placeholder-color: rgba(255, 255, 255, 0.6);\n    --arrow-color: rgba(255, 255, 255, 0.60);\n  }\n}\n\n@media (prefers-color-scheme: light) {\n  .system {\n    --background: #fff;\n    --text-primary: #222;\n    --text-secondary: #6c6d75;\n    --container-bg: #fff;\n    --border-color: #d1d5db;\n    --button-bg: #e0e0e0;\n    --button-bg-hover: #d0d0d0;\n    --toggle-bg: #ccc;\n    --toggle-active-bg: #4CAF50;\n    --error-bg-connect: #ffcccc;\n    --error-text-connect: #d00000;\n    --error-bg-proxy: #fff3cd;\n    --error-text-proxy: #856404;\n    --сonnection-lost: #8b8a86;\n    --error-bg-general: #d1ecf1;\n    --error-text-general: #0c5460;\n    --success-color: #23cb71;\n    --error-color: #a31616;\n    --input-bg: #f9f9f9;\n    --input-text: #333;\n    --input-border: #ddd;\n    --dropdown-bg: #fff;\n    --dropdown-text: #333;\n    --dropdown-border: #ddd;\n    --dropdown-hover: #f5f5f5;\n    --shadow: 0 4px 0px rgba(0, 0, 0, 0.15);\n    --shadow-light: 0 2px 8px rgba(0, 0, 0, 0.1);\n    --shadow-bottom: 0 -2px 8px rgba(0, 0, 0, 0.1);\n    --link-color: #3E9FF8;\n    --link-hover: #58afff;\n    --select-bg: #fff;\n    --select-text: #374151;\n    --icon-color: #6c6d75;\n    --header-bg: #F7F7F9;\n    --footer-bg: #FFF;\n    --footer-icon-active: #3E9FF8;\n    --get-help-list-item-color: rgba(60, 60, 67, 0.60);\n    --get-help-button-bg-color: #fff;\n    --logout-button-border-color: rgba(84, 84, 86, 0.34);\n    --logout-button-bg-color: transparent;\n    --list-item-border-color: rgba(0, 0, 0, 0.08);\n    --toggle-bg-color: rgba(0, 0, 0, 0.09);\n    --tooltip-border-color: transparent;\n    --search-input-border-color: #E3EAF3;\n    --search-input-placeholder-color: rgba(60, 60, 67, 0.6);\n    --arrow-color: rgba(60, 60, 67, 0.6);\n  }\n}\n\nbody {\n  font-family: Roboto, -apple-system, 'Inter', BlinkMacSystemFont, 'Segoe UI', sans-serif;\n  font-size: 14px;\n  line-height: 1.5;\n  background: var(--background);\n  color: var(--text-primary);\n  box-shadow: var(--shadow);\n  /* height: 100vh; */\n}\n\n#root {\n  width: 100%;\n  height: 100%;\n  overflow: hidden;\n  box-sizing: border-box;\n}\n\n.vpn-wrapper {\n  width: 390px;\n  height: 365px;\n  max-height: 365px;\n  background: var(--background);\n  padding: 16px;\n  display: flex;\n  flex-direction: column;\n  overflow-y: auto;\n  overflow-x: hidden;\n  margin-right: auto;\n  margin-left: auto;\n\n  &.logged-in {\n    height: 100vh;\n    max-height: 100vh;\n    padding: 0;\n  }\n}\n\n.main-content {\n  display: flex;\n  flex-direction: column;\n  height: 100%;\n  flex-grow: 1;\n}\n\n.scroll-content {\n  height: 100%;\n  flex: 1;\n  display: flex;\n  flex-direction: column;\n  overflow-y: auto;\n  overflow-x: hidden;\n\n  &::-webkit-scrollbar {\n    width: 8px;\n  }\n\n  &::-webkit-scrollbar-track {\n      background: var(--background);\n      border-radius: 4px;\n  }\n\n  &::-webkit-scrollbar-thumb {\n      background: var(--button-bg);\n      border-radius: 4px;\n}\n\n  &::-webkit-scrollbar-thumb:hover {\n      background: var(--button-bg-hover);\n  }\n\n  :root {\n      .dark & {\n          .scroll-content {\n              &::-webkit-scrollbar-track {\n                  background: transparent;\n              }\n              &::-webkit-scrollbar-thumb {\n                  background: var(--toggle-bg);\n              }\n              &::-webkit-scrollbar-thumb:hover {\n                  background: var(--button-bg-hover);\n              }\n          }\n      }\n}\n}\n\n.vpn-menu {\n  display: flex;\n  justify-content: center;\n  align-items: center;\n  height: 30px;\n  background: var(--header-bg);\n  padding: 8px 16px;\n\n  &.connected {\n    background: var(--success-color);\n\n    .vpn-status {\n      opacity: 1;\n      color: #fff;\n    }\n  }\n\n  &.blocked {\n    background: var(--сonnection-lost);\n\n    .vpn-status {\n      opacity: 1;\n      color: #fff;\n    }\n  }\n}\n\n.vpn-header__connected {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  width: 100%;\n\n  .bold {\n    font-weight: 600;\n  }\n}\n\n.vpn-status {\n  color: var(--text-primary);\n  opacity: 0.5;\n  font-size: 12px;\n  width: 100%;\n  text-align: center;\n}\n\n.vpn-title {\n  font-size: 20px;\n  font-weight: bold;\n  color: var(--text-primary);\n}\n\n.vpn-icon-button {\n  background: transparent;\n  border: none;\n  color: var(--text-primary);\n  cursor: pointer;\n}\n\n.vpn-icon-button:disabled {\n  cursor: not-allowed;\n}\n\n.vpn-info {\n  text-align: center;\n  margin-bottom: 8px;\n}\n\n.vpn-ip {\n  font-size: 12px;\n  color: var(--text-secondary);\n  margin-bottom: 2px;\n}\n\n.vpn-location {\n  font-size: 16px;\n  font-weight: 600;\n  margin: 2px 0;\n  color: var(--text-primary);\n}\n\n.vpn-flag {\n  width: 24px;\n  height: 18px;\n  vertical-align: middle;\n  margin-left: 4px;\n}\n\n.vpn-controls {\n  position: relative;\n  display: flex;\n  justify-content: space-between;\n  margin-bottom: 16px;\n  flex-wrap: wrap;\n}\n\n.vpn-button {\n  flex: 1;\n  padding: 8px;\n  border: none;\n  border-radius: 6px;\n  font-size: 14px;\n  font-weight: 500;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  margin: 0 4px;\n  background: var(--button-bg);\n  color: var(--text-primary);\n}\n\n.vpn-pause {\n  background: var(--button-bg);\n  color: var(--text-primary);\n}\n\n.vpn-connect {\n  background: var(--toggle-active-bg);\n  color: #fff;\n}\n\n.vpn-connect:disabled {\n  background: var(--button-bg);\n  cursor: not-allowed;\n}\n\n.vpn-disconnect {\n  background: var(--error-color);\n  color: #fff;\n}\n\n.vpn-disconnect:disabled {\n  background: var(--button-bg);\n  cursor: not-allowed;\n}\n\n.vpn-pause:disabled {\n  background: var(--button-bg);\n  cursor: not-allowed;\n}\n\n.vpn-button:hover:not(:disabled) {\n  opacity: 0.9;\n}\n\n.vpn-country {\n  cursor: pointer;\n  padding: 5px;\n  border-radius: 50%;\n  background: var(--button-bg);\n}\n\n.vpn-country.vpn-selected {\n  background-color: var(--button-bg-hover);\n}\n\n.vpn-country-disabled {\n  pointer-events: none;\n  opacity: 0.6;\n  cursor: not-allowed;\n}\n\n.vpn-flag-circle {\n  width: 36px;\n  height: 36px;\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  color: var(--text-primary);\n  border: 0.33px solid #F2F2F7;\n}\n\n.vpn-selected {\n  background: var(--toggle-active-bg) !important;\n  border: 2px solid var(--container-bg);\n}\n\n.vpn-dropdown-toggle {\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  background: var(--input-bg);\n  border: 1px solid var(--input-border);\n  cursor: pointer;\n  height: 36px;\n  padding-left: 8px;\n  transition: border-color 0.2s ease;\n  border-radius: 5px;\n  padding-right: 8px;\n}\n\n.vpn-dropdown-toggle:hover {\n  border-color: var(--toggle-active-bg);\n}\n\n.vpn-selected-country {\n  font-weight: 500;\n  color: var(--input-text);\n}\n\n.vpn-arrow {\n  margin-left: 8px;\n  font-size: 12px;\n  color: var(--text-secondary);\n}\n\n.vpn-dropdown {\n  background: var(--dropdown-bg);\n  border: 1px solid var(--dropdown-border);\n  border-radius: 8px;\n  z-index: 10;\n  margin-top: 5px;\n  box-shadow: var(--shadow-light);\n  display: flex;\n  flex-direction: column;\n}\n\n.vpn-dropdown-item {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  padding: 8px;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  color: var(--input-text);\n}\n\n.vpn-dropdown-item:hover {\n  background-color: var(--dropdown-hover);\n}\n\n.vpn-dropdown-item-disabled {\n  pointer-events: none;\n  opacity: 0.6;\n  cursor: not-allowed;\n}\n\n.vpn-item-fastest {\n  position: relative;\n  padding-bottom: 8px;\n  margin-bottom: 8px;\n}\n\n.vpn-item-fastest::after {\n  content: '';\n  position: absolute;\n  bottom: 0;\n  left: 0;\n  width: 100%;\n  height: 1px;\n  background-color: var(--border-color);\n}\n\n.vpn-dropdown-info {\n  display: flex;\n  flex-direction: column;\n}\n\n.vpn-dropdown-title {\n  font-size: 14px;\n  color: var(--dropdown-text);\n}\n\n.vpn-dropdown-subtitle {\n  font-size: 12px;\n  color: var(--text-secondary);\n}\n\n.vpn-search-input {\n  width: 100%;\n  padding: 8px;\n  border: none;\n  border-bottom: 1px solid var(--input-border);\n  border-radius: 4px 4px 0 0;\n  font-size: 14px;\n  color: var(--input-text);\n  background-color: var(--input-bg);\n  box-sizing: border-box;\n}\n\n.vpn-search-input:focus {\n  outline: none;\n  border-bottom: 1px solid var(--toggle-active-bg);\n  background-color: var(--dropdown-bg);\n}\n\n.vpn-search-input::placeholder {\n  color: var(--text-secondary);\n}\n\n.preload {\n  width: 24px;\n  height: 24px;\n  border-radius: 50%;\n}\n\n.pre-connect {\n  display: flex;\n  align-items: center;\n  color: var(--text-secondary);\n  font-size: 14px;\n  font-weight: 600;\n}\n\n.pre-connect .preload {\n  margin-right: 10px;\n}\n\n.login-wrapper {\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  align-items: center;\n  flex-grow: 1;\n}\n\n.login-component {\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  justify-content: center;\n  gap: 30px;\n  width: 100%;\n  max-width: 272px;\n  margin: 0 auto;\n}\n\n.login-logo {\n  width: 140px;\n  height: 51px;\n}\n\n.login-title {\n  font-size: 23px;\n  font-weight: 700;\n  color: var(--text-primary);\n  margin: 0;\n  text-align: center;\n  line-height: 130%;\n  font-family: var(--roboto-condencesd);\n}\n\n.login-buttons {\n  width: 100%;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  gap: 10px;\n}\n\n.login-button {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 100%;\n  padding: 10px;\n  border: none;\n  border-radius: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 400;\n  line-height: 20px;\n  cursor: pointer;\n  background: var(--link-color);\n  color: #fff;\n  letter-spacing: -0.43px;\n  transition: background-color 0.3s;\n\n  &:hover {\n    background-color: #2F93FF;\n  }\n}\n\n.login-button:disabled {\n  opacity: 0.7;\n  cursor: not-allowed;\n}\n\n.signup-link {\n  font-size: 16px;\n  line-height: 22px;\n  color: var(--link-color);\n  text-decoration: none;\n  transition: color 0.2s ease;\n}\n\n.signup-link:hover {\n  color: var(--link-hover);\n  text-decoration: underline;\n}\n\n.bottom-menu {\n  display: flex;\n  justify-content: space-around;\n  align-items: center;\n  background: var(--background);\n  padding: 8px 0;\n  border-top: 1px solid var(--border-color);\n  width: 100%;\n  border-bottom-left-radius: 12px;\n  border-bottom-right-radius: 12px;\n  box-shadow: var(--shadow-bottom);\n  margin-top: auto;\n}\n\n.menu-button {\n  flex: 1;\n  padding: 8px;\n  background: transparent;\n  border: none;\n  cursor: pointer;\n  display: flex;\n  flex-direction: column;\n  align-items: center;\n  color: var(--text-secondary);\n  transition: color 0.3s ease, transform 0.2s ease;\n}\n\n.settings-container {\n  background: var(--container-bg);\n  border-radius: 8px;\n  box-shadow: var(--shadow-light);\n  padding: 16px;\n}\n\n.settings-container h2 {\n  margin-bottom: 16px;\n  color: var(--text-primary);\n}\n\n.settings-container .settings-item {\n  border: 1px solid var(--border-color);\n  background: var(--container-bg);\n  border-radius: 8px;\n  padding: 12px;\n  display: flex;\n  align-items: center;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  margin-bottom: 8px;\n}\n\n.settings-container .settings-item:hover {\n  background-color: var(--button-bg-hover);\n}\n\n.settings-container .settings-item:last-child {\n  margin-bottom: 0;\n}\n\n.settings-container .icon {\n  flex-shrink: 0;\n  width: 24px;\n  height: 24px;\n  margin-right: 16px;\n  color: var(--icon-color);\n}\n\n.settings-container .content {\n  flex: 1;\n}\n\n.settings-container .content .title {\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--text-primary);\n}\n\n.settings-container .content .description {\n  font-size: 12px;\n  color: var(--text-secondary);\n  margin-top: 4px;\n}\n\n.settings-container .arrow {\n  width: 24px;\n  height: 24px;\n  transform: rotate(-90deg);\n}\n\n.connection-container {\n  background: var(--container-bg);\n  border-radius: 8px;\n  box-shadow: var(--shadow-light);\n  padding: 16px;\n}\n\n.connection-container .header {\n  display: flex;\n  align-items: center;\n  margin-bottom: 16px;\n  cursor: pointer;\n}\n\n.connection-container .header .back-button {\n  background: transparent;\n  border: none;\n  cursor: pointer;\n  padding: 0;\n}\n\n.connection-container .header .back-button:hover svg {\n  color: var(--text-primary);\n}\n\n.connection-container .header .title {\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--text-primary);\n}\n\n.connection-container .header .status {\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--success-color);\n}\n\n.connection-container .header .status.red {\n  font-size: 14px;\n  font-weight: 600;\n  color: var(--error-color);\n}\n\n.connection-container .connection-item {\n  border: 1px solid var(--border-color);\n  background: var(--container-bg);\n  border-radius: 8px;\n  padding: 12px;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  margin-bottom: 8px;\n  position: relative;\n}\n\n.connection-container .connection-item:hover {\n  background-color: var(--button-bg-hover);\n}\n\n.connection-container .icon {\n  flex-shrink: 0;\n  width: 24px;\n  height: 24px;\n  margin-right: 16px;\n  color: var(--icon-color);\n}\n\n.connection-container .content {\n  flex: 1;\n}\n\n.connection-container .content .title {\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--text-primary);\n}\n\n.connection-container .content .description {\n  font-size: 12px;\n  color: var(--text-secondary);\n  margin-top: 4px;\n}\n\n.connection-container .toggle {\n  width: 40px;\n  height: 24px;\n  background-color: var(--toggle-bg);\n  color: var(--text-secondary);\n  border-radius: 9999px;\n  padding: 4px;\n  position: relative;\n  cursor: pointer;\n}\n\n.connection-container .toggle.active {\n  background-color: var(--toggle-active-bg);\n}\n\n.connection-container .toggle.active .thumb {\n  transform: translateX(16px);\n}\n.connection-container .toggle.active .pre-connect {\n  transform: translateX(16px);\n}\n\n.connection-container .arrow {\n  width: 24px;\n  height: 24px;\n  transform: rotate(-90deg);\n}\n\n.w-10 {\n  width: 40px;\n}\n\n.h-6 {\n  height: 24px;\n}\n\n.bg-gray-300 {\n  background-color: var(--toggle-bg);\n}\n\n.rounded-full {\n  border-radius: 9999px;\n}\n\n.p-1 {\n  padding: 4px;\n}\n\n.w-4 {\n  width: 16px;\n}\n\n.h-4 {\n  height: 16px;\n}\n\n.bg-white {\n  background-color: #fff;\n}\n\n.transition-transform {\n  transition-property: transform;\n}\n\n.duration-200 {\n  transition-duration: 200ms;\n}\n\n.translate-x-4 {\n  transform: translateX(16px);\n}\n\n.translate-x-0 {\n  transform: translateX(0);\n}\n\n.sr-only {\n  position: absolute;\n  width: 1px;\n  height: 1px;\n  padding: 0;\n  margin: -1px;\n  overflow: hidden;\n  clip: rect(0, 0, 0, 0);\n  border: 0;\n}\n\n.toggle {\n  width: 40px;\n  height: 24px;\n  background-color: var(--toggle-bg);\n  border-radius: 12px;\n  position: relative;\n  cursor: pointer;\n  transition: background-color 0.3s;\n  display: flex;\n  align-items: center;\n}\n\n.toggle.active {\n  background-color: var(--toggle-active-bg);\n}\n\n.thumb {\n  width: 20px;\n  height: 20px;\n  background-color: white;\n  border-radius: 50%;\n  position: absolute;\n  top: 2px;\n  left: 2px;\n  transition: transform 0.3s ease;\n}\n\n.toggle.active .thumb {\n  transform: translateX(16px);\n}\n\n.toggle.active .pre-connect {\n  transform: translateX(16px);\n}\n\n.general-item .toggle {\n  flex-shrink: 0;\n}\n\n.general-settings-container {\n  background: var(--container-bg);\n  border-radius: 8px;\n  box-shadow: var(--shadow-light);\n  padding: 16px;\n}\n\n.general-settings-container .header {\n  display: flex;\n  align-items: center;\n  margin-bottom: 16px;\n  cursor: pointer;\n}\n\n.general-settings-container .header .back-button {\n  background: transparent;\n  border: none;\n  cursor: pointer;\n  padding: 0;\n  margin-right: 8px;\n}\n\n.general-settings-container .header .back-button:hover svg {\n  color: var(--text-primary);\n}\n\n.general-settings-container .header .title {\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--text-primary);\n}\n\n.general-settings-container .general-item {\n  border: 1px solid var(--border-color);\n  background: var(--container-bg);\n  border-radius: 8px;\n  padding: 12px;\n  display: flex;\n  align-items: center;\n  justify-content: space-between;\n  transition: background-color 0.2s ease;\n  margin-bottom: 8px;\n}\n\n.general-settings-container .general-item:hover {\n  background-color: var(--button-bg-hover);\n}\n\n.general-settings-container .general-item:last-child {\n  margin-bottom: 0;\n}\n\n.general-settings-container .general-item.disabled {\n  opacity: 0.5;\n  cursor: not-allowed;\n}\n\n.general-settings-container .icon {\n  flex-shrink: 0;\n  width: 24px;\n  height: 24px;\n  margin-right: 16px;\n  color: var(--icon-color);\n}\n\n.general-settings-container .content {\n  flex: 1;\n}\n\n.general-settings-container .content .title {\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--text-primary);\n}\n\n.general-settings-container .content .description {\n  font-size: 12px;\n  color: var(--text-secondary);\n  margin-top: 4px;\n}\n\n.general-settings-container .select {\n  padding: 4px 8px;\n  border: 1px solid var(--border-color);\n  border-radius: 6px;\n  font-size: 14px;\n  color: var(--select-text);\n  background: var(--select-bg);\n  cursor: pointer;\n  transition: border-color 0.2s ease;\n}\n\n.general-settings-container .select:hover {\n  border-color: var(--toggle-active-bg);\n}\n\n.general-settings-container .action-button {\n  padding: 8px 16px;\n  border: none;\n  border-radius: 6px;\n  font-size: 14px;\n  font-weight: 500;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  background: var(--toggle-active-bg);\n  color: #fff;\n  margin-left: 5px;\n}\n\n.general-settings-container .action-button:disabled {\n  background: var(--button-bg);\n  cursor: not-allowed;\n}\n\n.general-settings-container .action-button:hover:not(:disabled) {\n  opacity: 0.9;\n}\n\n.general-settings-container .user-info {\n  margin-top: 16px;\n  padding-top: 16px;\n  border-top: 1px solid var(--border-color);\n}\n\n.general-settings-container .user-info .title {\n  font-size: 14px;\n  font-weight: 500;\n  color: var(--text-primary);\n  margin-bottom: 8px;\n}\n\n.general-settings-container .user-info .email,\n.general-settings-container .user-info .subscription {\n  font-size: 12px;\n  color: var(--text-secondary);\n  margin-bottom: 4px;\n}\n\n.general-settings-container .logout-button {\n  width: 100%;\n  padding: 8px;\n  border: none;\n  border-radius: 6px;\n  font-size: 14px;\n  font-weight: 500;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  background: var(--error-color);\n  color: #fff;\n  margin-top: 12px;\n}\n\n.general-settings-container .logout-button:hover {\n  opacity: 0.9;\n}\n\n.settings-container,\n.connection-container,\n.general-settings-container {\n  padding-bottom: 60px;\n}\n\n.split-tunneling-section {\n  padding: 12px;\n  background: var(--container-bg);\n  border: 1px solid var(--border-color);\n  border-radius: 8px;\n  margin-top: 8px;\n  margin-bottom: 8px;\n}\n\n.rotate-180 {\n  transform: rotate(180deg);\n}\n\n.refer-a-friend-container {\n  background: var(--container-bg);\n  border-radius: 8px;\n  box-shadow: var(--shadow-light);\n  padding: 16px;\n}\n\n.refer-a-friend-container .header {\n  display: flex;\n  align-items: center;\n  margin-bottom: 16px;\n  cursor: pointer;\n}\n\n.refer-a-friend-container .header .back-button {\n  background: transparent;\n  border: none;\n  cursor: pointer;\n  padding: 0;\n  margin-right: 8px;\n}\n\n.refer-a-friend-container .header .back-button:hover svg {\n  color: var(--text-primary);\n}\n\n.refer-a-friend-container .header .title {\n  font-size: 20px;\n  font-weight: 600;\n  color: var(--text-primary);\n}\n\n.refer-a-friend-container .highlight-text {\n  font-weight: bold;\n  font-size: 22px;\n  color: var(--text-primary);\n  text-align: center;\n  margin-bottom: 20px;\n}\n\n.refer-a-friend-container .description {\n  color: var(--text-primary);\n  line-height: 1.5;\n  margin-bottom: 25px;\n}\n\n.refer-a-friend-container .link-container {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 10px;\n  margin-top: 20px;\n}\n\n.refer-a-friend-container .link-input {\n  flex: 1;\n  padding: 10px;\n  border: 1px solid var(--input-border);\n  border-radius: 5px;\n  font-size: 14px;\n  color: var(--input-text);\n  background: var(--input-bg);\n}\n\n.refer-a-friend-container .copy-button {\n  padding: 10px 20px;\n  background-color: var(--toggle-active-bg);\n  color: #fff;\n  border: none;\n  border-radius: 5px;\n  cursor: pointer;\n  transition: background-color 0.3s;\n  width: 100%;\n}\n\n.refer-a-friend-container .copy-button:hover {\n  background-color: var(--button-bg-hover);\n}\n\n.refer-a-friend-container .copy-button.copied {\n  background-color: var(--toggle-active-bg);\n}\n\n.formatTimeClass {\n  color: var(--text-primary);\n  width: 100%;\n  margin: 4px;\n}\n\n.pause-options {\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n  border-radius: 6px;\n  padding: 10px;\n  box-shadow: var(--shadow);\n  background: var(--background);\n  position: absolute;\n  top: 100%;\n  z-index: 1000;\n}\n\n.pause-options .select {\n  padding: 4px 8px;\n  border: 1px solid var(--border-color);\n  border-radius: 6px;\n  font-size: 14px;\n  color: var(--select-text);\n  background: var(--select-bg);\n  cursor: pointer;\n  transition: border-color 0.2s ease;\n}\n\n.pause-options .select:hover {\n  border-color: var(--toggle-active-bg);\n}\n\n.pause-options .action-button {\n  padding: 8px 16px;\n  border: none;\n  border-radius: 6px;\n  font-size: 14px;\n  font-weight: 500;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  background: var(--toggle-active-bg);\n  color: #fff;\n}\n\n.pause-options .action-button:disabled {\n  background: var(--button-bg);\n  cursor: not-allowed;\n}\n\n.pause-options .action-button:hover:not(:disabled) {\n  opacity: 0.9;\n}\n\n.login-error {\n  margin-top: 15px;\n}\n\n.error-message-wrapper {\n  padding: 15px 15px 0;\n}\n\n.clear-error-btn {\n  margin-left: 10px;\n  padding: 5px 10px;\n  background-color: var(--button-bg);\n  color: #fff;\n  border: none;\n  border-radius: 4px;\n  cursor: pointer;\n}\n\n.clear-error-btn:hover {\n  background-color: var(--button-bg-hover);\n}\n\n.vpn-dropdown-item {\n  display: flex;\n  align-items: center;\n  padding: 8px;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n}\n\n.vpn-dropdown-item:hover {\n  background-color: var(--dropdown-hover);\n}\n\n.vpn-dropdown-item-content {\n  display: flex;\n  align-items: center;\n  gap: 8px;\n  flex-grow: 1;\n}\n\n.vpn-dropdown-info {\n  display: flex;\n  align-items: start;\n  gap: 4px;\n}\n\n.vpn-dropdown-title {\n  font-size: 14px;\n  color: var(--dropdown-text);\n}\n\n.vpn-dropdown-subtitle {\n  font-size: 12px;\n  color: var(--text-secondary);\n}\n\n.dots-container {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 32px;\n  height: 32px;\n  cursor: pointer;\n  padding: 2px;\n  margin-left: 8px;\n  color: var(--input-bg);\n}\n\n.dots-container:hover {\n  background-color: var(--dropdown-hover);\n}\n\n.dots-icon {\n  width: 24px;\n  height: 24px;\n  color: var(--icon-color);\n}\n\n.dark .dots-icon {\n  color: #fff;\n}\n\n.back-button {\n  background: transparent;\n  border: none;\n  cursor: pointer;\n  padding: 0;\n  margin-right: 8px;\n  color: var(--input-text);\n}\n\n.vpn-interruption-message {\n  background: var(--container-bg);\n  border-radius: 8px;\n  box-shadow: var(--shadow-light);\n  padding: 16px;\n  text-align: center;\n  display: flex;\n  flex-direction: column;\n  gap: 12px;\n}\n\n.vpn-interruption-message .interruption-icon {\n  width: 48px;\n  height: 48px;\n  margin: 0 auto;\n  color: var(--error-color);\n}\n\n.vpn-interruption-message h3 {\n  font-size: 18px;\n  font-weight: 600;\n  color: var(--text-primary);\n  margin: 0;\n}\n\n.vpn-interruption-message p {\n  font-size: 14px;\n  color: var(--text-secondary);\n  margin: 0;\n}\n\n.vpn-interruption-message .manage-extensions-btn,\n.vpn-interruption-message .clear-error-btn {\n  padding: 8px 16px;\n  border: none;\n  border-radius: 6px;\n  font-size: 14px;\n  font-weight: 500;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  width: 100%;\n  margin-top: 8px;\n}\n\n.vpn-interruption-message .manage-extensions-btn {\n  background: var(--toggle-active-bg);\n  color: #fff;\n}\n\n.vpn-interruption-message .manage-extensions-btn:hover:not(:disabled) {\n  opacity: 0.9;\n}\n\n.vpn-interruption-message .clear-error-btn {\n  background: var(--button-bg);\n  color: #fff;\n}\n\n.vpn-interruption-message .clear-error-btn:hover:not(:disabled) {\n  background: var(--button-bg-hover);\n}\n\n.vpn-flag-large {\n  width: 32px;\n  height: 32px;\n  border-radius: 50%;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  color: var(--text-primary);\n}\n\n.vpn-dropdown::-webkit-scrollbar {\n  width: 8px;\n}\n\n.vpn-dropdown::-webkit-scrollbar-track {\n  background: var(--dropdown-bg);\n  border-radius: 4px;\n}\n\n.vpn-dropdown::-webkit-scrollbar-thumb {\n  background: var(--button-bg);\n  border-radius: 4px;\n}\n\n.vpn-dropdown::-webkit-scrollbar-thumb:hover {\n  background: var(--button-bg-hover);\n}\n\n.dark .vpn-dropdown::-webkit-scrollbar-track {\n  background: var(--container-bg);\n}\n\n.dark .vpn-dropdown::-webkit-scrollbar-thumb {\n  background: var(--toggle-bg);\n}\n\n.dark .vpn-dropdown::-webkit-scrollbar-thumb:hover {\n  background: var(--button-bg-hover);\n}\n\n.vpn-countries-inner {\n  display: flex;\n  align-items: center;\n  flex-wrap: wrap;\n  justify-content: center;\n}\n\n.vpn-dropdown.full-width {\n  width: 100%;\n  max-width: 400px;\n  box-sizing: border-box;\n  padding: 0;\n}\n\n.vpn-dropdown-item {\n  display: flex;\n  align-items: center;\n  padding: 8px 12px;\n  cursor: pointer;\n  transition: background-color 0.2s ease;\n  color: var(--input-text);\n  width: 100%;\n}\n\n.mb-10 {\n  margin-bottom: 10px;\n}\n\n.vpn-selected-country-container {\n  display: contents;\n}\n\n.main-toggle-wrapper {\n  display: flex;\n  flex-direction: column;\n  align-items: flex-end\n}\n\n.toggle-wrapper {\n  margin-bottom: 4px;\n}\n.arrow-wrapper {\n  position: absolute;\n  bottom: 8px;\n  right: 8px;\n}\n\n.country-not-found {\n  display: flex;\n  justify-content: center;\n  margin-top: 15px;\n}\n.country-not-found .description {\n  font-size: 14px;\n  color: var(--text-secondary);\n}\n"],"sourceRoot":""}]);
// Exports
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/CountrySelector/CountrySelector.module.css":
/*!*************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/CountrySelector/CountrySelector.module.css ***!
  \*************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --text-primary: #000;
    --text-secondary: rgba(60, 60, 67, 0.60);
}

.dark {
    --text-primary: #fff;
    --text-secondary: rgba(255, 255, 255, 0.60);
}

.CountrySelector-module__wrapper___1ItQp {
    margin-top: 15px;
    padding: 0 15px;
    flex: 1;
    overflow: hidden;
    display: flex;
    flex-direction: column
}

.CountrySelector-module__container___N3LhY {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.CountrySelector-module__coutries___Zte_a {
    display: flex;
    justify-content: space-between;
    padding: 0 16px;
}

.CountrySelector-module__vpn-country___a1sJG {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    cursor: pointer;
    position: relative;

    &.CountrySelector-module__selected___SlD_z {
        border: 2px solid var(--success-color);
    }

    &:hover {
        .CountrySelector-module__tooltip___k3Uve {
            opacity: 1;
        }

        &:not(.CountrySelector-module__selected___SlD_z) {
            border: 2px solid #3E9FF8;
        }
    }
}

.CountrySelector-module__tooltip___k3Uve {
    opacity: 0;
    pointer-events: none;
    padding: 7px 10px;
    width: fit-content;
    border-radius: 8px;
    background: var(--background);
    box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.10), 1px 1px 4px 0 rgba(0, 0, 0, 0.10);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    color: var(--text-primary);
    border: 1px solid var(--tooltip-border-color);
    transition: 0.3s opacity;
    position: fixed;
    white-space: nowrap;
}

.CountrySelector-module__flag___sq4cY {
    height: 36px;
    width: 36px;
    border-radius: 50%;
    overflow: hidden;
}

.CountrySelector-module__disbled___TkqZe {
    opacity: 0.6;
    cursor: default;
}

.CountrySelector-module__search-container___qIh9e{
    position: relative;
    margin-top: 15px;
}

.CountrySelector-module__search___K2FMN {
    width: 100%;
    padding: 7px 8px 7px 33px;
    border-radius: 10px;
    color: var(--title-color);
    font-size: 15px;
    border: 1px solid var(--search-input-border-color);
    background: var(--background);
    height: 42px;
    font-family: inherit;
    transition: border-color 0.3s;

    &:focus,
    &:hover {
        outline: none;
        border-color: #3E9FF8;
    }

    &::placeholder {
        color: var(--search-input-placeholder-color);
    }
}

.CountrySelector-module__search-icon___AaOVg {
    position: absolute;
    left: 8px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--search-input-placeholder-color);
}

.CountrySelector-module__search-list___MdfR1 {
    width: calc(100% + 32px);
    min-height: 54px;
    flex: 1;
    overflow-y: auto;
    margin: 10px -16px 0 -16px;

    &.CountrySelector-module__disbled___TkqZe {
        pointer-events: none;
        cursor: default;
    }

    &::-webkit-scrollbar {
        width: 8px;
      }

    &::-webkit-scrollbar-track {
        background: var(--background);
        border-radius: 4px;
      }

    &::-webkit-scrollbar-thumb {
        background: var(--button-bg);
        border-radius: 4px;
      }

    &::-webkit-scrollbar-thumb:hover {
        background: var(--button-bg-hover);
      }

    :root {
        .CountrySelector-module__dark___Kgo2h & {
            .CountrySelector-module__search-list___MdfR1 {
                &::-webkit-scrollbar-track {
                    background: transparent;
                }
                &::-webkit-scrollbar-thumb {
                    background: var(--toggle-bg);
                }
                &::-webkit-scrollbar-thumb:hover {
                    background: var(--button-bg-hover);
                }
            }
        }
    }
}

.CountrySelector-module__search-item-wrapper___wgBqL {
    padding: 0 16px;

    &.CountrySelector-module__no-border___YPnAd {
        .CountrySelector-module__search-item___GWQK8 {
            .CountrySelector-module__content___IY7Hq {
                border-color: transparent;
            }
        }
    }

    &:hover {
        background-color: var(--dropdown-hover);

        .CountrySelector-module__search-item___GWQK8 {
            .CountrySelector-module__content___IY7Hq {
                border-color: transparent;
            }
        }
    }
}

.CountrySelector-module__search-item-wrapper-title___q4Cz1 {
  font-size: 14px;
  line-height: 18px;
  color: var(--text-secondary);
}

.CountrySelector-module__search-item___GWQK8 {
    display: flex;
    align-items: center;
    cursor: pointer;
    transition: background-color 0.2s ease;
    color: var(--input-text);
    width: 100%;

    &.CountrySelector-module__disabled___cnP9D {
        &:hover {
            background: transparent;
        }
    }

    .CountrySelector-module__content___IY7Hq {
        display: flex;
        align-items: center;
        gap: 12px;
        flex-grow: 1;
        border-bottom: 0.33px solid var(--list-item-border-color);
        transition: border-color 0.3s;
    }

    .CountrySelector-module__text___NpR7y {
        flex: 1;
        display: flex;
        flex-direction: column;
        padding: 12px 12px 12px 0;

        .CountrySelector-module__title___xhRdO {
            font-size: 17px;
            line-height: 22px;
            color: var(--text-primary);
        }

        .CountrySelector-module__subtitle___mkRNt {
            font-size: 13px;
            line-height: 18px;
            color: var(--text-secondary);
        }
    }

    &:last-child {
        .CountrySelector-module__text___NpR7y {
            border-bottom: none;
        }
    }
}

.CountrySelector-module__disabled___cnP9D {
    pointer-events: none;
    cursor: default;
}

.CountrySelector-module__dropdown___mcYcO {
    margin-left: 16px;
    margin-right: 16px;
}`, "",{"version":3,"sources":["webpack://./src/components/CountrySelector/CountrySelector.module.css"],"names":[],"mappings":"AAAA;IACI,oBAAoB;IACpB,wCAAwC;AAC5C;;AAEA;IACI,oBAAoB;IACpB,2CAA2C;AAC/C;;AAEA;IACI,gBAAgB;IAChB,eAAe;IACf,OAAO;IACP,gBAAgB;IAChB,aAAa;IACb;AACJ;;AAEA;IACI,YAAY;IACZ,aAAa;IACb,sBAAsB;AAC1B;;AAEA;IACI,aAAa;IACb,8BAA8B;IAC9B,eAAe;AACnB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,kBAAkB;IAClB,eAAe;IACf,kBAAkB;;IAElB;QACI,sCAAsC;IAC1C;;IAEA;QACI;YACI,UAAU;QACd;;QAEA;YACI,yBAAyB;QAC7B;IACJ;AACJ;;AAEA;IACI,UAAU;IACV,oBAAoB;IACpB,iBAAiB;IACjB,kBAAkB;IAClB,kBAAkB;IAClB,6BAA6B;IAC7B,gFAAgF;IAChF,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,0BAA0B;IAC1B,6CAA6C;IAC7C,wBAAwB;IACxB,eAAe;IACf,mBAAmB;AACvB;;AAEA;IACI,YAAY;IACZ,WAAW;IACX,kBAAkB;IAClB,gBAAgB;AACpB;;AAEA;IACI,YAAY;IACZ,eAAe;AACnB;;AAEA;IACI,kBAAkB;IAClB,gBAAgB;AACpB;;AAEA;IACI,WAAW;IACX,yBAAyB;IACzB,mBAAmB;IACnB,yBAAyB;IACzB,eAAe;IACf,kDAAkD;IAClD,6BAA6B;IAC7B,YAAY;IACZ,oBAAoB;IACpB,6BAA6B;;IAE7B;;QAEI,aAAa;QACb,qBAAqB;IACzB;;IAEA;QACI,4CAA4C;IAChD;AACJ;;AAEA;IACI,kBAAkB;IAClB,SAAS;IACT,QAAQ;IACR,2BAA2B;IAC3B,4CAA4C;AAChD;;AAEA;IACI,wBAAwB;IACxB,gBAAgB;IAChB,OAAO;IACP,gBAAgB;IAChB,0BAA0B;;IAE1B;QACI,oBAAoB;QACpB,eAAe;IACnB;;IAEA;QACI,UAAU;MACZ;;IAEF;QACI,6BAA6B;QAC7B,kBAAkB;MACpB;;IAEF;QACI,4BAA4B;QAC5B,kBAAkB;MACpB;;IAEF;QACI,kCAAkC;MACpC;;IAEF;QACI;YACI;gBACI;oBACI,uBAAuB;gBAC3B;gBACA;oBACI,4BAA4B;gBAChC;gBACA;oBACI,kCAAkC;gBACtC;YACJ;QACJ;IACJ;AACJ;;AAEA;IACI,eAAe;;IAEf;QACI;YACI;gBACI,yBAAyB;YAC7B;QACJ;IACJ;;IAEA;QACI,uCAAuC;;QAEvC;YACI;gBACI,yBAAyB;YAC7B;QACJ;IACJ;AACJ;;AAEA;EACE,eAAe;EACf,iBAAiB;EACjB,4BAA4B;AAC9B;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,eAAe;IACf,sCAAsC;IACtC,wBAAwB;IACxB,WAAW;;IAEX;QACI;YACI,uBAAuB;QAC3B;IACJ;;IAEA;QACI,aAAa;QACb,mBAAmB;QACnB,SAAS;QACT,YAAY;QACZ,yDAAyD;QACzD,6BAA6B;IACjC;;IAEA;QACI,OAAO;QACP,aAAa;QACb,sBAAsB;QACtB,yBAAyB;;QAEzB;YACI,eAAe;YACf,iBAAiB;YACjB,0BAA0B;QAC9B;;QAEA;YACI,eAAe;YACf,iBAAiB;YACjB,4BAA4B;QAChC;IACJ;;IAEA;QACI;YACI,mBAAmB;QACvB;IACJ;AACJ;;AAEA;IACI,oBAAoB;IACpB,eAAe;AACnB;;AAEA;IACI,iBAAiB;IACjB,kBAAkB;AACtB","sourcesContent":[":root {\n    --text-primary: #000;\n    --text-secondary: rgba(60, 60, 67, 0.60);\n}\n\n:global(.dark) {\n    --text-primary: #fff;\n    --text-secondary: rgba(255, 255, 255, 0.60);\n}\n\n.wrapper {\n    margin-top: 15px;\n    padding: 0 15px;\n    flex: 1;\n    overflow: hidden;\n    display: flex;\n    flex-direction: column\n}\n\n.container {\n    height: 100%;\n    display: flex;\n    flex-direction: column;\n}\n\n.coutries {\n    display: flex;\n    justify-content: space-between;\n    padding: 0 16px;\n}\n\n.vpn-country {\n    width: 44px;\n    height: 44px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    border-radius: 50%;\n    cursor: pointer;\n    position: relative;\n\n    &.selected {\n        border: 2px solid var(--success-color);\n    }\n\n    &:hover {\n        .tooltip {\n            opacity: 1;\n        }\n\n        &:not(.selected) {\n            border: 2px solid #3E9FF8;\n        }\n    }\n}\n\n.tooltip {\n    opacity: 0;\n    pointer-events: none;\n    padding: 7px 10px;\n    width: fit-content;\n    border-radius: 8px;\n    background: var(--background);\n    box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.10), 1px 1px 4px 0 rgba(0, 0, 0, 0.10);\n    font-size: 14px;\n    font-style: normal;\n    font-weight: 400;\n    color: var(--text-primary);\n    border: 1px solid var(--tooltip-border-color);\n    transition: 0.3s opacity;\n    position: fixed;\n    white-space: nowrap;\n}\n\n.flag {\n    height: 36px;\n    width: 36px;\n    border-radius: 50%;\n    overflow: hidden;\n}\n\n.disbled {\n    opacity: 0.6;\n    cursor: default;\n}\n\n.search-container{\n    position: relative;\n    margin-top: 15px;\n}\n\n.search {\n    width: 100%;\n    padding: 7px 8px 7px 33px;\n    border-radius: 10px;\n    color: var(--title-color);\n    font-size: 15px;\n    border: 1px solid var(--search-input-border-color);\n    background: var(--background);\n    height: 42px;\n    font-family: inherit;\n    transition: border-color 0.3s;\n\n    &:focus,\n    &:hover {\n        outline: none;\n        border-color: #3E9FF8;\n    }\n\n    &::placeholder {\n        color: var(--search-input-placeholder-color);\n    }\n}\n\n.search-icon {\n    position: absolute;\n    left: 8px;\n    top: 50%;\n    transform: translateY(-50%);\n    color: var(--search-input-placeholder-color);\n}\n\n.search-list {\n    width: calc(100% + 32px);\n    min-height: 54px;\n    flex: 1;\n    overflow-y: auto;\n    margin: 10px -16px 0 -16px;\n\n    &.disbled {\n        pointer-events: none;\n        cursor: default;\n    }\n\n    &::-webkit-scrollbar {\n        width: 8px;\n      }\n\n    &::-webkit-scrollbar-track {\n        background: var(--background);\n        border-radius: 4px;\n      }\n\n    &::-webkit-scrollbar-thumb {\n        background: var(--button-bg);\n        border-radius: 4px;\n      }\n\n    &::-webkit-scrollbar-thumb:hover {\n        background: var(--button-bg-hover);\n      }\n\n    :root {\n        .dark & {\n            .search-list {\n                &::-webkit-scrollbar-track {\n                    background: transparent;\n                }\n                &::-webkit-scrollbar-thumb {\n                    background: var(--toggle-bg);\n                }\n                &::-webkit-scrollbar-thumb:hover {\n                    background: var(--button-bg-hover);\n                }\n            }\n        }\n    }\n}\n\n.search-item-wrapper {\n    padding: 0 16px;\n\n    &.no-border {\n        .search-item {\n            .content {\n                border-color: transparent;\n            }\n        }\n    }\n\n    &:hover {\n        background-color: var(--dropdown-hover);\n\n        .search-item {\n            .content {\n                border-color: transparent;\n            }\n        }\n    }\n}\n\n.search-item-wrapper-title {\n  font-size: 14px;\n  line-height: 18px;\n  color: var(--text-secondary);\n}\n\n.search-item {\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n    transition: background-color 0.2s ease;\n    color: var(--input-text);\n    width: 100%;\n\n    &.disabled {\n        &:hover {\n            background: transparent;\n        }\n    }\n\n    .content {\n        display: flex;\n        align-items: center;\n        gap: 12px;\n        flex-grow: 1;\n        border-bottom: 0.33px solid var(--list-item-border-color);\n        transition: border-color 0.3s;\n    }\n\n    .text {\n        flex: 1;\n        display: flex;\n        flex-direction: column;\n        padding: 12px 12px 12px 0;\n\n        .title {\n            font-size: 17px;\n            line-height: 22px;\n            color: var(--text-primary);\n        }\n\n        .subtitle {\n            font-size: 13px;\n            line-height: 18px;\n            color: var(--text-secondary);\n        }\n    }\n\n    &:last-child {\n        .text {\n            border-bottom: none;\n        }\n    }\n}\n\n.disabled {\n    pointer-events: none;\n    cursor: default;\n}\n\n.dropdown {\n    margin-left: 16px;\n    margin-right: 16px;\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `CountrySelector-module__wrapper___1ItQp`,
	"container": `CountrySelector-module__container___N3LhY`,
	"coutries": `CountrySelector-module__coutries___Zte_a`,
	"vpn-country": `CountrySelector-module__vpn-country___a1sJG`,
	"vpnCountry": `CountrySelector-module__vpn-country___a1sJG`,
	"selected": `CountrySelector-module__selected___SlD_z`,
	"tooltip": `CountrySelector-module__tooltip___k3Uve`,
	"flag": `CountrySelector-module__flag___sq4cY`,
	"disbled": `CountrySelector-module__disbled___TkqZe`,
	"search-container": `CountrySelector-module__search-container___qIh9e`,
	"searchContainer": `CountrySelector-module__search-container___qIh9e`,
	"search": `CountrySelector-module__search___K2FMN`,
	"search-icon": `CountrySelector-module__search-icon___AaOVg`,
	"searchIcon": `CountrySelector-module__search-icon___AaOVg`,
	"search-list": `CountrySelector-module__search-list___MdfR1`,
	"searchList": `CountrySelector-module__search-list___MdfR1`,
	"dark": `CountrySelector-module__dark___Kgo2h`,
	"search-item-wrapper": `CountrySelector-module__search-item-wrapper___wgBqL`,
	"searchItemWrapper": `CountrySelector-module__search-item-wrapper___wgBqL`,
	"no-border": `CountrySelector-module__no-border___YPnAd`,
	"noBorder": `CountrySelector-module__no-border___YPnAd`,
	"search-item": `CountrySelector-module__search-item___GWQK8`,
	"searchItem": `CountrySelector-module__search-item___GWQK8`,
	"content": `CountrySelector-module__content___IY7Hq`,
	"search-item-wrapper-title": `CountrySelector-module__search-item-wrapper-title___q4Cz1`,
	"searchItemWrapperTitle": `CountrySelector-module__search-item-wrapper-title___q4Cz1`,
	"disabled": `CountrySelector-module__disabled___cnP9D`,
	"text": `CountrySelector-module__text___NpR7y`,
	"title": `CountrySelector-module__title___xhRdO`,
	"subtitle": `CountrySelector-module__subtitle___mkRNt`,
	"dropdown": `CountrySelector-module__dropdown___mcYcO`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/NoSubscribe/NoSubscribe.module.css":
/*!*****************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/NoSubscribe/NoSubscribe.module.css ***!
  \*****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.NoSubscribe-module__wrapper___ALmWy {
    padding: 16px;
    color: var(--text-primary);
    text-align: center;
    border-bottom: 1px solid var(--border-select);
}

.NoSubscribe-module__title___pdf_O {
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%;
    letter-spacing: -0.43px;
    color: var(--title-color);
    font-family: var(--roboto-condencesd);
}

.NoSubscribe-module__description___GjLc4 {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    margin-top: 5px;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
    letter-spacing: -0.43px;
}

.NoSubscribe-module__btn___Sbuja {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 10px;
    width: 100%;
    padding: 10px;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 500;
    font-family: inherit;
    line-height: 20px;
    cursor: pointer;
    background: var(--link-color);
    color: #fff;
    letter-spacing: -0.43px;
    text-decoration: none;
    transition: background-color 0.3s;

    &:hover {
        background-color: #2F93FF;
    }
}`, "",{"version":3,"sources":["webpack://./src/components/NoSubscribe/NoSubscribe.module.css"],"names":[],"mappings":"AAAA;IACI,aAAa;IACb,0BAA0B;IAC1B,kBAAkB;IAClB,6CAA6C;AACjD;;AAEA;IACI,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;IACvB,yBAAyB;IACzB,qCAAqC;AACzC;;AAEA;IACI,aAAa;IACb,sBAAsB;IACtB,mBAAmB;IACnB,QAAQ;IACR,eAAe;IACf,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;AAC3B;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,gBAAgB;IAChB,WAAW;IACX,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,gBAAgB;IAChB,oBAAoB;IACpB,iBAAiB;IACjB,eAAe;IACf,6BAA6B;IAC7B,WAAW;IACX,uBAAuB;IACvB,qBAAqB;IACrB,iCAAiC;;IAEjC;QACI,yBAAyB;IAC7B;AACJ","sourcesContent":[".wrapper {\n    padding: 16px;\n    color: var(--text-primary);\n    text-align: center;\n    border-bottom: 1px solid var(--border-select);\n}\n\n.title {\n    font-size: 18px;\n    font-style: normal;\n    font-weight: 600;\n    line-height: 150%;\n    letter-spacing: -0.43px;\n    color: var(--title-color);\n    font-family: var(--roboto-condencesd);\n}\n\n.description {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    gap: 5px;\n    margin-top: 5px;\n    font-size: 14px;\n    font-style: normal;\n    font-weight: 400;\n    line-height: 150%;\n    letter-spacing: -0.43px;\n}\n\n.btn {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    margin-top: 10px;\n    width: 100%;\n    padding: 10px;\n    border: none;\n    border-radius: 8px;\n    font-size: 16px;\n    font-weight: 500;\n    font-family: inherit;\n    line-height: 20px;\n    cursor: pointer;\n    background: var(--link-color);\n    color: #fff;\n    letter-spacing: -0.43px;\n    text-decoration: none;\n    transition: background-color 0.3s;\n\n    &:hover {\n        background-color: #2F93FF;\n    }\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `NoSubscribe-module__wrapper___ALmWy`,
	"title": `NoSubscribe-module__title___pdf_O`,
	"description": `NoSubscribe-module__description___GjLc4`,
	"btn": `NoSubscribe-module__btn___Sbuja`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/Preloader/Preloader.module.css":
/*!*************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/Preloader/Preloader.module.css ***!
  \*************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.Preloader-module__loader-wrapper___Sac2v {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-grow: 1;
}

.Preloader-module__loader___qUEcP {
    width: 70px;
    height: 70px;
    border: 2px solid var(--link-color);
    border-top: 2px solid transparent;
    border-radius: 50%;
    animation: Preloader-module__spin___x1Oon 1s linear infinite;
}

@keyframes Preloader-module__spin___x1Oon {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}`, "",{"version":3,"sources":["webpack://./src/components/Preloader/Preloader.module.css"],"names":[],"mappings":"AAAA;IACI,aAAa;IACb,sBAAsB;IACtB,uBAAuB;IACvB,mBAAmB;IACnB,YAAY;AAChB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,mCAAmC;IACnC,iCAAiC;IACjC,kBAAkB;IAClB,4DAAkC;AACtC;;AAEA;IACI;QACI,uBAAuB;IAC3B;IACA;QACI,yBAAyB;IAC7B;AACJ","sourcesContent":[".loader-wrapper {\n    display: flex;\n    flex-direction: column;\n    justify-content: center;\n    align-items: center;\n    flex-grow: 1;\n}\n\n.loader {\n    width: 70px;\n    height: 70px;\n    border: 2px solid var(--link-color);\n    border-top: 2px solid transparent;\n    border-radius: 50%;\n    animation: spin 1s linear infinite;\n}\n\n@keyframes spin {\n    0% {\n        transform: rotate(0deg);\n    }\n    100% {\n        transform: rotate(360deg);\n    }\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"loader-wrapper": `Preloader-module__loader-wrapper___Sac2v`,
	"loaderWrapper": `Preloader-module__loader-wrapper___Sac2v`,
	"loader": `Preloader-module__loader___qUEcP`,
	"spin": `Preloader-module__spin___x1Oon`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/VpnControls/Statuses/Statuses.module.css":
/*!***********************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/VpnControls/Statuses/Statuses.module.css ***!
  \***********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --text-primary: #000;
    --text-secondary: rgba(60, 60, 67, 0.60);
    --pause-bg: #fff;
    --pause-color: #222;
    --button-bg-hover: #E3EAF3;
}

.dark {
    --text-primary: #fff;
    --text-secondary: rgba(255, 255, 255, 0.60);
    --pause-bg: #404042;
    --pause-color: #fff;
    --button-bg-hover: #262627;
}


.Statuses-module__wrapper___teqJl {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;
}

.Statuses-module__data___gqt6T {
    position: relative;
    z-index: 1;
    display: flex;
    gap: 16px;
    flex: 1;
    width: 100%;
    align-items: center;
}

.Statuses-module__icon-wrapper___LHTP6 {
    width: 44px;
    height: 44px;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--background);
    border-radius: 50%;

    &.Statuses-module__connected___OOZPr {
        border: 2px solid var(--success-color);
    }

    &.Statuses-module__connecting___eNl12 {
        background: var(--background);

        .Statuses-module__icon___oG07V {
            color: var(--text-primary);
        }

        .Statuses-module__loading___M64_d {
            position: absolute;
            top: -1px;
            left: -1px;
            color: #23CB71;
            animation: Statuses-module__spin___uIizN 1s linear infinite;
            animation-delay: 0s;
            transform: rotate(0deg);
        }
    }

    &.Statuses-module__pause___Z4Lxh {
        border: 2px solid #C7D6DB;
    }

    .Statuses-module__flag___kNbEl {
        width: 36px;
        height: 36px;
        border-radius: 50%;
        overflow: hidden;
    }
}

.Statuses-module__pause___Z4Lxh {
    opacity: 0.6;
}

.Statuses-module__title___jIvDz {
    font-size: 16px;
    font-weight: 400;
    color: var(--text-primary);
    line-height: 22px;
}

.Statuses-module__description___vplSi {
    font-size: 12px;
    color: var(--text-secondary);
}

.Statuses-module__buttons___bdOif {
    display: flex;
    gap: 10px;
    width: 100%;
    margin-top: 15px;
}

.Statuses-module__button___Cxr66 {
    flex: 1;
    border-radius: 8px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    font-family: inherit;
    text-align: center;
    line-height: 20px;
    height: 46px;
    border: none;
    transition: opacity 0.3s, background-color 0.3s;
    padding: 0 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

    &:disabled {
        opacity: 0.5;
        cursor: not-allowed;
        pointer-events: none;
    }

    &.Statuses-module__connect___TBm4O {
        background-color: var(--success-color);
        color: #fff;

        &:not(:disabled):hover {
            background-color: #2BDC7D;
        }
    }

    &.Statuses-module__connecting___eNl12 {
        background-color: #2BDC7D;
        color: #fff;
    }

    &.Statuses-module__disconnect___Oci9S {
        background: rgba(0, 122, 255, 0.15);
        color: var(--link-color);

        &:not(:disabled):hover {
            background-color: rgba(0, 122, 255, 0.25);
        }
    }

    &.Statuses-module__cancel___Llh0I {
        background: rgba(0, 122, 255, 0.15);
        color: var(--link-color);
        cursor: pointer;
    }

    &.Statuses-module__cancel___Llh0I:hover {
        background-color: rgba(0, 122, 255, 0.25);
    }

    &.Statuses-module__resume___NsCJY {
        background: var(--link-color);
        color: #fff;

        &:not(:disabled):hover {
            background-color: #2F93FF;
        }
    }
}

.Statuses-module__additional-buttons___q0YNU{
    display: flex;
    align-items: center;
    gap: 10px;
    margin-left: auto;

    .Statuses-module__btn___fro6x {
        display: flex;
        background: transparent;
        align-items: center;
        justify-content: center;
        border: none;
        cursor: pointer;
        width: 32px;
        height: 32px;
        color: var(--text-primary);
        position: relative;
        border-radius: 8px;

        &:disabled {
            opacity: 0.5;
            cursor: not-allowed;
            pointer-events: none;
        }

        &:not(:disabled):hover{
            &:not(.Statuses-module__open___SvcSR) {
                background: var(--button-bg-hover);
            }
        }
    }
}

.Statuses-module__pause-options___liDm_ {
    position: absolute;
    top: 100%;
    right: 0;
    border-radius: 8px;
    background: var(--pause-bg);
    box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.10), 1px 1px 4px 0 rgba(0, 0, 0, 0.10);
}

.Statuses-module__pause-option___hqgBu {
    font-size: 14px;
    line-height: 150%;
    color: var(--pause-color);
    padding: 7px 10px;
    min-width: 105px;
    white-space: nowrap;
    cursor: pointer;
    transition: color 0.2s ease;

    &:hover {
        color: var(--link-color);
    }
}

.Statuses-module__get-subscription___GIRqK {
    background-color: #3E9FF8;
    color: #FFF;
}


@keyframes Statuses-module__spin___uIizN {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}
`, "",{"version":3,"sources":["webpack://./src/components/VpnControls/Statuses/Statuses.module.css"],"names":[],"mappings":"AAAA;IACI,oBAAoB;IACpB,wCAAwC;IACxC,gBAAgB;IAChB,mBAAmB;IACnB,0BAA0B;AAC9B;;AAEA;IACI,oBAAoB;IACpB,2CAA2C;IAC3C,mBAAmB;IACnB,mBAAmB;IACnB,0BAA0B;AAC9B;;;AAGA;IACI,aAAa;IACb,sBAAsB;IACtB,mBAAmB;IACnB,kBAAkB;AACtB;;AAEA;IACI,kBAAkB;IAClB,UAAU;IACV,aAAa;IACb,SAAS;IACT,OAAO;IACP,WAAW;IACX,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,6BAA6B;IAC7B,kBAAkB;;IAElB;QACI,sCAAsC;IAC1C;;IAEA;QACI,6BAA6B;;QAE7B;YACI,0BAA0B;QAC9B;;QAEA;YACI,kBAAkB;YAClB,SAAS;YACT,UAAU;YACV,cAAc;YACd,2DAAkC;YAClC,mBAAmB;YACnB,uBAAuB;QAC3B;IACJ;;IAEA;QACI,yBAAyB;IAC7B;;IAEA;QACI,WAAW;QACX,YAAY;QACZ,kBAAkB;QAClB,gBAAgB;IACpB;AACJ;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,0BAA0B;IAC1B,iBAAiB;AACrB;;AAEA;IACI,eAAe;IACf,4BAA4B;AAChC;;AAEA;IACI,aAAa;IACb,SAAS;IACT,WAAW;IACX,gBAAgB;AACpB;;AAEA;IACI,OAAO;IACP,kBAAkB;IAClB,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,oBAAoB;IACpB,kBAAkB;IAClB,iBAAiB;IACjB,YAAY;IACZ,YAAY;IACZ,+CAA+C;IAC/C,eAAe;IACf,mBAAmB;IACnB,gBAAgB;IAChB,uBAAuB;;IAEvB;QACI,YAAY;QACZ,mBAAmB;QACnB,oBAAoB;IACxB;;IAEA;QACI,sCAAsC;QACtC,WAAW;;QAEX;YACI,yBAAyB;QAC7B;IACJ;;IAEA;QACI,yBAAyB;QACzB,WAAW;IACf;;IAEA;QACI,mCAAmC;QACnC,wBAAwB;;QAExB;YACI,yCAAyC;QAC7C;IACJ;;IAEA;QACI,mCAAmC;QACnC,wBAAwB;QACxB,eAAe;IACnB;;IAEA;QACI,yCAAyC;IAC7C;;IAEA;QACI,6BAA6B;QAC7B,WAAW;;QAEX;YACI,yBAAyB;QAC7B;IACJ;AACJ;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,SAAS;IACT,iBAAiB;;IAEjB;QACI,aAAa;QACb,uBAAuB;QACvB,mBAAmB;QACnB,uBAAuB;QACvB,YAAY;QACZ,eAAe;QACf,WAAW;QACX,YAAY;QACZ,0BAA0B;QAC1B,kBAAkB;QAClB,kBAAkB;;QAElB;YACI,YAAY;YACZ,mBAAmB;YACnB,oBAAoB;QACxB;;QAEA;YACI;gBACI,kCAAkC;YACtC;QACJ;IACJ;AACJ;;AAEA;IACI,kBAAkB;IAClB,SAAS;IACT,QAAQ;IACR,kBAAkB;IAClB,2BAA2B;IAC3B,gFAAgF;AACpF;;AAEA;IACI,eAAe;IACf,iBAAiB;IACjB,yBAAyB;IACzB,iBAAiB;IACjB,gBAAgB;IAChB,mBAAmB;IACnB,eAAe;IACf,2BAA2B;;IAE3B;QACI,wBAAwB;IAC5B;AACJ;;AAEA;IACI,yBAAyB;IACzB,WAAW;AACf;;;AAGA;IACI,KAAK,uBAAuB,EAAE;IAC9B,OAAO,yBAAyB,EAAE;AACtC","sourcesContent":[":root {\n    --text-primary: #000;\n    --text-secondary: rgba(60, 60, 67, 0.60);\n    --pause-bg: #fff;\n    --pause-color: #222;\n    --button-bg-hover: #E3EAF3;\n}\n\n:global(.dark) {\n    --text-primary: #fff;\n    --text-secondary: rgba(255, 255, 255, 0.60);\n    --pause-bg: #404042;\n    --pause-color: #fff;\n    --button-bg-hover: #262627;\n}\n\n\n.wrapper {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    position: relative;\n}\n\n.data {\n    position: relative;\n    z-index: 1;\n    display: flex;\n    gap: 16px;\n    flex: 1;\n    width: 100%;\n    align-items: center;\n}\n\n.icon-wrapper {\n    width: 44px;\n    height: 44px;\n    position: relative;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background: var(--background);\n    border-radius: 50%;\n\n    &.connected {\n        border: 2px solid var(--success-color);\n    }\n\n    &.connecting {\n        background: var(--background);\n\n        .icon {\n            color: var(--text-primary);\n        }\n\n        .loading {\n            position: absolute;\n            top: -1px;\n            left: -1px;\n            color: #23CB71;\n            animation: spin 1s linear infinite;\n            animation-delay: 0s;\n            transform: rotate(0deg);\n        }\n    }\n\n    &.pause {\n        border: 2px solid #C7D6DB;\n    }\n\n    .flag {\n        width: 36px;\n        height: 36px;\n        border-radius: 50%;\n        overflow: hidden;\n    }\n}\n\n.pause {\n    opacity: 0.6;\n}\n\n.title {\n    font-size: 16px;\n    font-weight: 400;\n    color: var(--text-primary);\n    line-height: 22px;\n}\n\n.description {\n    font-size: 12px;\n    color: var(--text-secondary);\n}\n\n.buttons {\n    display: flex;\n    gap: 10px;\n    width: 100%;\n    margin-top: 15px;\n}\n\n.button {\n    flex: 1;\n    border-radius: 8px;\n    cursor: pointer;\n    font-size: 16px;\n    font-weight: 500;\n    font-family: inherit;\n    text-align: center;\n    line-height: 20px;\n    height: 46px;\n    border: none;\n    transition: opacity 0.3s, background-color 0.3s;\n    padding: 0 16px;\n    white-space: nowrap;\n    overflow: hidden;\n    text-overflow: ellipsis;\n\n    &:disabled {\n        opacity: 0.5;\n        cursor: not-allowed;\n        pointer-events: none;\n    }\n\n    &.connect {\n        background-color: var(--success-color);\n        color: #fff;\n\n        &:not(:disabled):hover {\n            background-color: #2BDC7D;\n        }\n    }\n\n    &.connecting {\n        background-color: #2BDC7D;\n        color: #fff;\n    }\n\n    &.disconnect {\n        background: rgba(0, 122, 255, 0.15);\n        color: var(--link-color);\n\n        &:not(:disabled):hover {\n            background-color: rgba(0, 122, 255, 0.25);\n        }\n    }\n\n    &.cancel {\n        background: rgba(0, 122, 255, 0.15);\n        color: var(--link-color);\n        cursor: pointer;\n    }\n\n    &.cancel:hover {\n        background-color: rgba(0, 122, 255, 0.25);\n    }\n\n    &.resume {\n        background: var(--link-color);\n        color: #fff;\n\n        &:not(:disabled):hover {\n            background-color: #2F93FF;\n        }\n    }\n}\n\n.additional-buttons{\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    margin-left: auto;\n\n    .btn {\n        display: flex;\n        background: transparent;\n        align-items: center;\n        justify-content: center;\n        border: none;\n        cursor: pointer;\n        width: 32px;\n        height: 32px;\n        color: var(--text-primary);\n        position: relative;\n        border-radius: 8px;\n\n        &:disabled {\n            opacity: 0.5;\n            cursor: not-allowed;\n            pointer-events: none;\n        }\n\n        &:not(:disabled):hover{\n            &:not(.open) {\n                background: var(--button-bg-hover);\n            }\n        }\n    }\n}\n\n.pause-options {\n    position: absolute;\n    top: 100%;\n    right: 0;\n    border-radius: 8px;\n    background: var(--pause-bg);\n    box-shadow: 1px 1px 1px 0 rgba(0, 0, 0, 0.10), 1px 1px 4px 0 rgba(0, 0, 0, 0.10);\n}\n\n.pause-option {\n    font-size: 14px;\n    line-height: 150%;\n    color: var(--pause-color);\n    padding: 7px 10px;\n    min-width: 105px;\n    white-space: nowrap;\n    cursor: pointer;\n    transition: color 0.2s ease;\n\n    &:hover {\n        color: var(--link-color);\n    }\n}\n\n.get-subscription {\n    background-color: #3E9FF8;\n    color: #FFF;\n}\n\n\n@keyframes spin {\n    0% { transform: rotate(0deg); }\n    100% { transform: rotate(360deg); }\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `Statuses-module__wrapper___teqJl`,
	"data": `Statuses-module__data___gqt6T`,
	"icon-wrapper": `Statuses-module__icon-wrapper___LHTP6`,
	"iconWrapper": `Statuses-module__icon-wrapper___LHTP6`,
	"spin": `Statuses-module__spin___uIizN`,
	"connected": `Statuses-module__connected___OOZPr`,
	"connecting": `Statuses-module__connecting___eNl12`,
	"icon": `Statuses-module__icon___oG07V`,
	"loading": `Statuses-module__loading___M64_d`,
	"pause": `Statuses-module__pause___Z4Lxh`,
	"flag": `Statuses-module__flag___kNbEl`,
	"title": `Statuses-module__title___jIvDz`,
	"description": `Statuses-module__description___vplSi`,
	"buttons": `Statuses-module__buttons___bdOif`,
	"button": `Statuses-module__button___Cxr66`,
	"connect": `Statuses-module__connect___TBm4O`,
	"disconnect": `Statuses-module__disconnect___Oci9S`,
	"cancel": `Statuses-module__cancel___Llh0I`,
	"resume": `Statuses-module__resume___NsCJY`,
	"additional-buttons": `Statuses-module__additional-buttons___q0YNU`,
	"additionalButtons": `Statuses-module__additional-buttons___q0YNU`,
	"btn": `Statuses-module__btn___fro6x`,
	"open": `Statuses-module__open___SvcSR`,
	"pause-options": `Statuses-module__pause-options___liDm_`,
	"pauseOptions": `Statuses-module__pause-options___liDm_`,
	"pause-option": `Statuses-module__pause-option___hqgBu`,
	"pauseOption": `Statuses-module__pause-option___hqgBu`,
	"get-subscription": `Statuses-module__get-subscription___GIRqK`,
	"getSubscription": `Statuses-module__get-subscription___GIRqK`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/VpnControls/VpnControls.module.css":
/*!*****************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/VpnControls/VpnControls.module.css ***!
  \*****************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.VpnControls-module__wrapper___cNGcx {
    padding: 20px 15px 0;
}

.VpnControls-module__icon-wrapper___OgDAc {
    margin: 0 auto;
    width: fit-content;
}

.VpnControls-module__controls___FE1aT {
    margin-top: 20px;
    background: var(--header-bg);
    padding: 15px 16px 16px 16px;
    border-radius: 12px;
    position: relative;
}`, "",{"version":3,"sources":["webpack://./src/components/VpnControls/VpnControls.module.css"],"names":[],"mappings":"AAAA;IACI,oBAAoB;AACxB;;AAEA;IACI,cAAc;IACd,kBAAkB;AACtB;;AAEA;IACI,gBAAgB;IAChB,4BAA4B;IAC5B,4BAA4B;IAC5B,mBAAmB;IACnB,kBAAkB;AACtB","sourcesContent":[".wrapper {\n    padding: 20px 15px 0;\n}\n\n.icon-wrapper {\n    margin: 0 auto;\n    width: fit-content;\n}\n\n.controls {\n    margin-top: 20px;\n    background: var(--header-bg);\n    padding: 15px 16px 16px 16px;\n    border-radius: 12px;\n    position: relative;\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `VpnControls-module__wrapper___cNGcx`,
	"icon-wrapper": `VpnControls-module__icon-wrapper___OgDAc`,
	"iconWrapper": `VpnControls-module__icon-wrapper___OgDAc`,
	"controls": `VpnControls-module__controls___FE1aT`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ContactUs/ContactUs.module.css":
/*!*******************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ContactUs/ContactUs.module.css ***!
  \*******************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --contact-us-background: #FFFFFF;
    --contact-us-title: #000000;
    --contact-us-text: #1D1B20;
}

.dark{
    --contact-us-background: #000000;
    --contact-us-title: #FFFFFF;
    --contact-us-text: #FFFFFF;
}

.ContactUs-module__container___Iv3M5 {
    background-color: var(--contact-us-background);
    padding: 16px;
    flex: 1;
}

.ContactUs-module__header___iGFzz {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
    margin-top: 4px;
    cursor: pointer;
}

.ContactUs-module__header-title___NIKgO {
    color: var(--contact-us-title);
    font-size: 24px;
    line-height: 22px;
    font-weight: 600;
    letter-spacing: -0.43px;
}

.ContactUs-module__header-icon___u2ZhL {
    cursor: pointer;
    color: var(--contact-us-title);
}

.ContactUs-module__header-title-bold___mDNNh {
    font-weight: 600;
}

.ContactUs-module__subtitle___RxWJO {
    color: var(--contact-us-text);
    margin-bottom: 20px;
    font-size: 16px;
    line-height: 18px;
    font-weight: 400;
}

.ContactUs-module__logs___IXo53 {
    margin-bottom: 16px;
    display: flex;
    gap: 16px;
}

.ContactUs-module__logs-text___rLzgb {
    color: var(--contact-us-text);
    font-size: 16px;
    line-height: 18px;
    font-weight: 400;
}

.ContactUs-module__button___dRFeM {
    width: 100%;
    height: 46px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #3E9FF8;
    font-weight: 500;
    font-size: 16px;
    font-family: inherit;
    line-height: 20px;
    color: #FFFFFF;
    border: 0;
    cursor: pointer;
    margin-top: 16px;
    transition: background-color 0.3s;

    &:hover {
        background-color: #58AFFF;
    }

    &:disabled {
        opacity: 0.5;
        cursor: not-allowed;
        pointer-events: none;
    }
}

.ContactUs-module__success-contact-us-wrapper___s6P5C {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 30px;
}

.ContactUs-module__success-contact-us-title___KkacS {
    font-size: 24px;
    font-weight: 600;
    line-height: normal;
    color: var(--title-color);
    text-align: center;
    margin-top: 43px;
}

.ContactUs-module__success-contact-us-text___nZYYB {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%;
    text-align: center;
    color: var(--title-color);
    margin-top: 10px;
}

.ContactUs-module__success-contact-us-btn___LJV5C {
    margin-top: 30px;
}`, "",{"version":3,"sources":["webpack://./src/components/pages/ContactUs/ContactUs.module.css"],"names":[],"mappings":"AAAA;IACI,gCAAgC;IAChC,2BAA2B;IAC3B,0BAA0B;AAC9B;;AAEA;IACI,gCAAgC;IAChC,2BAA2B;IAC3B,0BAA0B;AAC9B;;AAEA;IACI,8CAA8C;IAC9C,aAAa;IACb,OAAO;AACX;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,SAAS;IACT,mBAAmB;IACnB,eAAe;IACf,eAAe;AACnB;;AAEA;IACI,8BAA8B;IAC9B,eAAe;IACf,iBAAiB;IACjB,gBAAgB;IAChB,uBAAuB;AAC3B;;AAEA;IACI,eAAe;IACf,8BAA8B;AAClC;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,6BAA6B;IAC7B,mBAAmB;IACnB,eAAe;IACf,iBAAiB;IACjB,gBAAgB;AACpB;;AAEA;IACI,mBAAmB;IACnB,aAAa;IACb,SAAS;AACb;;AAEA;IACI,6BAA6B;IAC7B,eAAe;IACf,iBAAiB;IACjB,gBAAgB;AACpB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,yBAAyB;IACzB,gBAAgB;IAChB,eAAe;IACf,oBAAoB;IACpB,iBAAiB;IACjB,cAAc;IACd,SAAS;IACT,eAAe;IACf,gBAAgB;IAChB,iCAAiC;;IAEjC;QACI,yBAAyB;IAC7B;;IAEA;QACI,YAAY;QACZ,mBAAmB;QACnB,oBAAoB;IACxB;AACJ;;AAEA;IACI,aAAa;IACb,sBAAsB;IACtB,mBAAmB;IACnB,gBAAgB;AACpB;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,mBAAmB;IACnB,yBAAyB;IACzB,kBAAkB;IAClB,gBAAgB;AACpB;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,yBAAyB;IACzB,gBAAgB;AACpB;;AAEA;IACI,gBAAgB;AACpB","sourcesContent":[":root {\n    --contact-us-background: #FFFFFF;\n    --contact-us-title: #000000;\n    --contact-us-text: #1D1B20;\n}\n\n:global(.dark ){\n    --contact-us-background: #000000;\n    --contact-us-title: #FFFFFF;\n    --contact-us-text: #FFFFFF;\n}\n\n.container {\n    background-color: var(--contact-us-background);\n    padding: 16px;\n    flex: 1;\n}\n\n.header {\n    display: flex;\n    align-items: center;\n    gap: 16px;\n    margin-bottom: 20px;\n    margin-top: 4px;\n    cursor: pointer;\n}\n\n.header-title {\n    color: var(--contact-us-title);\n    font-size: 24px;\n    line-height: 22px;\n    font-weight: 600;\n    letter-spacing: -0.43px;\n}\n\n.header-icon {\n    cursor: pointer;\n    color: var(--contact-us-title);\n}\n\n.header-title-bold {\n    font-weight: 600;\n}\n\n.subtitle {\n    color: var(--contact-us-text);\n    margin-bottom: 20px;\n    font-size: 16px;\n    line-height: 18px;\n    font-weight: 400;\n}\n\n.logs {\n    margin-bottom: 16px;\n    display: flex;\n    gap: 16px;\n}\n\n.logs-text {\n    color: var(--contact-us-text);\n    font-size: 16px;\n    line-height: 18px;\n    font-weight: 400;\n}\n\n.button {\n    width: 100%;\n    height: 46px;\n    border-radius: 8px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background-color: #3E9FF8;\n    font-weight: 500;\n    font-size: 16px;\n    font-family: inherit;\n    line-height: 20px;\n    color: #FFFFFF;\n    border: 0;\n    cursor: pointer;\n    margin-top: 16px;\n    transition: background-color 0.3s;\n\n    &:hover {\n        background-color: #58AFFF;\n    }\n\n    &:disabled {\n        opacity: 0.5;\n        cursor: not-allowed;\n        pointer-events: none;\n    }\n}\n\n.success-contact-us-wrapper {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    margin-top: 30px;\n}\n\n.success-contact-us-title {\n    font-size: 24px;\n    font-weight: 600;\n    line-height: normal;\n    color: var(--title-color);\n    text-align: center;\n    margin-top: 43px;\n}\n\n.success-contact-us-text {\n    font-size: 16px;\n    font-weight: 400;\n    line-height: 150%;\n    text-align: center;\n    color: var(--title-color);\n    margin-top: 10px;\n}\n\n.success-contact-us-btn {\n    margin-top: 30px;\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"container": `ContactUs-module__container___Iv3M5`,
	"header": `ContactUs-module__header___iGFzz`,
	"header-title": `ContactUs-module__header-title___NIKgO`,
	"headerTitle": `ContactUs-module__header-title___NIKgO`,
	"header-icon": `ContactUs-module__header-icon___u2ZhL`,
	"headerIcon": `ContactUs-module__header-icon___u2ZhL`,
	"header-title-bold": `ContactUs-module__header-title-bold___mDNNh`,
	"headerTitleBold": `ContactUs-module__header-title-bold___mDNNh`,
	"subtitle": `ContactUs-module__subtitle___RxWJO`,
	"logs": `ContactUs-module__logs___IXo53`,
	"logs-text": `ContactUs-module__logs-text___rLzgb`,
	"logsText": `ContactUs-module__logs-text___rLzgb`,
	"button": `ContactUs-module__button___dRFeM`,
	"success-contact-us-wrapper": `ContactUs-module__success-contact-us-wrapper___s6P5C`,
	"successContactUsWrapper": `ContactUs-module__success-contact-us-wrapper___s6P5C`,
	"success-contact-us-title": `ContactUs-module__success-contact-us-title___KkacS`,
	"successContactUsTitle": `ContactUs-module__success-contact-us-title___KkacS`,
	"success-contact-us-text": `ContactUs-module__success-contact-us-text___nZYYB`,
	"successContactUsText": `ContactUs-module__success-contact-us-text___nZYYB`,
	"success-contact-us-btn": `ContactUs-module__success-contact-us-btn___LJV5C`,
	"successContactUsBtn": `ContactUs-module__success-contact-us-btn___LJV5C`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.module.css":
/*!*******************************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.module.css ***!
  \*******************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --general-settings-screen-title: #000000;
    --general-settings-screen-text: #3C3C4399;
    --general-settings-screen-item-toggle-border: #E8E8E8;
    --toogle-bg-color-hover: rgba(0, 0, 0, 0.15)
}

.dark{
    --general-settings-screen-title: #FFFFFF;
    --general-settings-screen-text: #FFFFFF99;
    --toogle-bg-color-hover: rgba(255, 255, 255, 0.35)
}

.GeneralSettingsScreen-module__container___JCIhh {
    padding: 20px 16px;
}

.GeneralSettingsScreen-module__header___AYo0R {
    display: flex;
    align-items: center;
    cursor: pointer;
    margin-bottom: 5px;
}

.GeneralSettingsScreen-module__back-button___rM7cu {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-right: 12px;
    color: var(--general-settings-screen-title);
    height: fit-content;

    svg {
        display: block;
    }
}

.GeneralSettingsScreen-module__header-title___uf8oX {
    font-size: 24px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -0.43px;
    color: var(--general-settings-screen-title);
}

.GeneralSettingsScreen-module__list___jrxSu {
    display: block;
}

.GeneralSettingsScreen-module__share-data-item___cCkvN,
.GeneralSettingsScreen-module__language-item___Q_lPR,
.GeneralSettingsScreen-module__appearance-item___j1om2,
.GeneralSettingsScreen-module__save-settings-item___NG4la {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 15px 0;
    border-bottom: 0.33px solid var(--list-item-border-color);
}

.GeneralSettingsScreen-module__language-item___Q_lPR {
    border-bottom: none;
}

.GeneralSettingsScreen-module__backup-settings-item___PsMYw {
    display: block;
    padding: 15px 0;
    border-bottom: 0.33px solid var(--list-item-border-color);
}

.GeneralSettingsScreen-module__item-header___i1c3l {
    flex: 1;
}

.GeneralSettingsScreen-module__item-title___rvs59 {
  font-size: 16px;
  font-weight: 400;
  color: var(--general-settings-screen-title);
  line-height: 22px;
  letter-spacing: -0.43px;
}

.GeneralSettingsScreen-module__item-description___khZXz {
    margin-top: 3px;
    color: var(--general-settings-screen-text);
    line-height: 130%;
    font-size: 14px;
    letter-spacing: -0.43px;
}


.GeneralSettingsScreen-module__item-toggle-disable___xemoT {
  opacity: 0.5;
}

.GeneralSettingsScreen-module__button-new-tab___KLGUy {
    border: none;
    outline: none;
    background-color: transparent;
    color: #3E9FF8;
    margin-left: 5px;
    cursor: pointer;
}

.GeneralSettingsScreen-module__item-toggle___ZMnwZ {
    width: 38px;
    height: 22px;
    background-color: var(--toggle-bg-color);
    border-radius: 12px;
    position: relative;
    cursor: pointer;
    transition: background-color 0.3s;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    align-self: stretch;

    &:hover {
        background-color: var(--toogle-bg-color-hover);;
    }
}

.GeneralSettingsScreen-module__item-toggle-active___j092W {
    width: 38px;
    height: 22px;
    border-radius: 12px;
    position: relative;
    cursor: pointer;
    transition: background-color 0.3s;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    background-color: #23CB71;
    align-self: stretch;
}

.GeneralSettingsScreen-module__item-toggle-thumb___HWzql {
    width: 18px;
    height: 18px;
    background-color: white;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    border: 0.5px solid rgba(0, 0, 0, 0.02);
    transition: transform 0.3s ease;
    box-shadow: 0 0.25px 0.5px 0.1px rgba(0, 0, 0, 0.12);
}

.GeneralSettingsScreen-module__item-toggle-active-thumb___CMruU {
    width: 18px;
    height: 18px;
    background-color: white;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    transition: transform 0.3s ease;
    border: 0.5px solid rgba(0, 0, 0, 0.02);
    transform: translateX(16px);
    box-shadow: 0 0.2px 0.25px 0 rgba(0, 0, 0, 0.12);
}

.GeneralSettingsScreen-module__item-content___T4UlC {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 10px 0;
}

.GeneralSettingsScreen-module__export-button___FTqRx {
    flex: 1;
    border-radius: 8px;
    min-height: 40px;
    gap: 9px;
    padding: 8px;
    border: 1px solid #3E9FF8;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #3E9FF8;
    color: #FFFFFF;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    font-family: inherit;
    line-height: 20px;
    transition: background-color 0.3s;
    min-width: 0;

    &:hover {
        background-color: #58AFFF;
    }

    svg {
        flex-shrink: 0;
    }

    span {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
    }
}

.GeneralSettingsScreen-module__import-button___G7PbT {
    flex: 1;
    min-height: 40px;
    border-radius: 8px;
    gap: 9px;
    padding: 8px;
    border: 1px solid #3E9FF8;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #3E9FF8;
    background-color: transparent;
    cursor: pointer;
    font-size: 14px;
    font-weight: 500;
    font-family: inherit;
    line-height: 20px;
    transition: background-color 0.3s, color 0.3s;
    min-width: 0;

    &:hover {
        background-color: #3E9FF8;
        color: #FFF;
    }

    svg {
        flex-shrink: 0;
    }

    span {
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
    }
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.module.css"],"names":[],"mappings":"AAAA;IACI,wCAAwC;IACxC,yCAAyC;IACzC,qDAAqD;IACrD;AACJ;;AAEA;IACI,wCAAwC;IACxC,yCAAyC;IACzC;AACJ;;AAEA;IACI,kBAAkB;AACtB;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,eAAe;IACf,kBAAkB;AACtB;;AAEA;IACI,uBAAuB;IACvB,YAAY;IACZ,eAAe;IACf,UAAU;IACV,kBAAkB;IAClB,2CAA2C;IAC3C,mBAAmB;;IAEnB;QACI,cAAc;IAClB;AACJ;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;IACvB,2CAA2C;AAC/C;;AAEA;IACI,cAAc;AAClB;;AAEA;;;;IAII,aAAa;IACb,mBAAmB;IACnB,8BAA8B;IAC9B,eAAe;IACf,yDAAyD;AAC7D;;AAEA;IACI,mBAAmB;AACvB;;AAEA;IACI,cAAc;IACd,eAAe;IACf,yDAAyD;AAC7D;;AAEA;IACI,OAAO;AACX;;AAEA;EACE,eAAe;EACf,gBAAgB;EAChB,2CAA2C;EAC3C,iBAAiB;EACjB,uBAAuB;AACzB;;AAEA;IACI,eAAe;IACf,0CAA0C;IAC1C,iBAAiB;IACjB,eAAe;IACf,uBAAuB;AAC3B;;;AAGA;EACE,YAAY;AACd;;AAEA;IACI,YAAY;IACZ,aAAa;IACb,6BAA6B;IAC7B,cAAc;IACd,gBAAgB;IAChB,eAAe;AACnB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,wCAAwC;IACxC,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,iCAAiC;IACjC,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,mBAAmB;;IAEnB;QACI,8CAA8C;IAClD;AACJ;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,iCAAiC;IACjC,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,yBAAyB;IACzB,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,QAAQ;IACR,SAAS;IACT,uCAAuC;IACvC,+BAA+B;IAC/B,oDAAoD;AACxD;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,QAAQ;IACR,SAAS;IACT,+BAA+B;IAC/B,uCAAuC;IACvC,2BAA2B;IAC3B,gDAAgD;AACpD;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,SAAS;IACT,cAAc;AAClB;;AAEA;IACI,OAAO;IACP,kBAAkB;IAClB,gBAAgB;IAChB,QAAQ;IACR,YAAY;IACZ,yBAAyB;IACzB,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,yBAAyB;IACzB,cAAc;IACd,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,oBAAoB;IACpB,iBAAiB;IACjB,iCAAiC;IACjC,YAAY;;IAEZ;QACI,yBAAyB;IAC7B;;IAEA;QACI,cAAc;IAClB;;IAEA;QACI,mBAAmB;QACnB,uBAAuB;QACvB,gBAAgB;IACpB;AACJ;;AAEA;IACI,OAAO;IACP,gBAAgB;IAChB,kBAAkB;IAClB,QAAQ;IACR,YAAY;IACZ,yBAAyB;IACzB,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,cAAc;IACd,6BAA6B;IAC7B,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,oBAAoB;IACpB,iBAAiB;IACjB,6CAA6C;IAC7C,YAAY;;IAEZ;QACI,yBAAyB;QACzB,WAAW;IACf;;IAEA;QACI,cAAc;IAClB;;IAEA;QACI,mBAAmB;QACnB,uBAAuB;QACvB,gBAAgB;IACpB;AACJ","sourcesContent":[":root {\n    --general-settings-screen-title: #000000;\n    --general-settings-screen-text: #3C3C4399;\n    --general-settings-screen-item-toggle-border: #E8E8E8;\n    --toogle-bg-color-hover: rgba(0, 0, 0, 0.15)\n}\n\n:global(.dark ){\n    --general-settings-screen-title: #FFFFFF;\n    --general-settings-screen-text: #FFFFFF99;\n    --toogle-bg-color-hover: rgba(255, 255, 255, 0.35)\n}\n\n.container {\n    padding: 20px 16px;\n}\n\n.header {\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n    margin-bottom: 5px;\n}\n\n.back-button {\n    background: transparent;\n    border: none;\n    cursor: pointer;\n    padding: 0;\n    margin-right: 12px;\n    color: var(--general-settings-screen-title);\n    height: fit-content;\n\n    svg {\n        display: block;\n    }\n}\n\n.header-title {\n    font-size: 24px;\n    font-weight: 600;\n    line-height: 22px;\n    letter-spacing: -0.43px;\n    color: var(--general-settings-screen-title);\n}\n\n.list {\n    display: block;\n}\n\n.share-data-item,\n.language-item,\n.appearance-item,\n.save-settings-item {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    padding: 15px 0;\n    border-bottom: 0.33px solid var(--list-item-border-color);\n}\n\n.language-item {\n    border-bottom: none;\n}\n\n.backup-settings-item {\n    display: block;\n    padding: 15px 0;\n    border-bottom: 0.33px solid var(--list-item-border-color);\n}\n\n.item-header {\n    flex: 1;\n}\n\n.item-title {\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--general-settings-screen-title);\n  line-height: 22px;\n  letter-spacing: -0.43px;\n}\n\n.item-description {\n    margin-top: 3px;\n    color: var(--general-settings-screen-text);\n    line-height: 130%;\n    font-size: 14px;\n    letter-spacing: -0.43px;\n}\n\n\n.item-toggle-disable {\n  opacity: 0.5;\n}\n\n.button-new-tab {\n    border: none;\n    outline: none;\n    background-color: transparent;\n    color: #3E9FF8;\n    margin-left: 5px;\n    cursor: pointer;\n}\n\n.item-toggle {\n    width: 38px;\n    height: 22px;\n    background-color: var(--toggle-bg-color);\n    border-radius: 12px;\n    position: relative;\n    cursor: pointer;\n    transition: background-color 0.3s;\n    display: flex;\n    align-items: center;\n    flex-shrink: 0;\n    align-self: stretch;\n\n    &:hover {\n        background-color: var(--toogle-bg-color-hover);;\n    }\n}\n\n.item-toggle-active {\n    width: 38px;\n    height: 22px;\n    border-radius: 12px;\n    position: relative;\n    cursor: pointer;\n    transition: background-color 0.3s;\n    display: flex;\n    align-items: center;\n    flex-shrink: 0;\n    background-color: #23CB71;\n    align-self: stretch;\n}\n\n.item-toggle-thumb {\n    width: 18px;\n    height: 18px;\n    background-color: white;\n    border-radius: 50%;\n    position: absolute;\n    top: 2px;\n    left: 2px;\n    border: 0.5px solid rgba(0, 0, 0, 0.02);\n    transition: transform 0.3s ease;\n    box-shadow: 0 0.25px 0.5px 0.1px rgba(0, 0, 0, 0.12);\n}\n\n.item-toggle-active-thumb {\n    width: 18px;\n    height: 18px;\n    background-color: white;\n    border-radius: 50%;\n    position: absolute;\n    top: 2px;\n    left: 2px;\n    transition: transform 0.3s ease;\n    border: 0.5px solid rgba(0, 0, 0, 0.02);\n    transform: translateX(16px);\n    box-shadow: 0 0.2px 0.25px 0 rgba(0, 0, 0, 0.12);\n}\n\n.item-content {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    margin: 10px 0;\n}\n\n.export-button {\n    flex: 1;\n    border-radius: 8px;\n    min-height: 40px;\n    gap: 9px;\n    padding: 8px;\n    border: 1px solid #3E9FF8;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    background-color: #3E9FF8;\n    color: #FFFFFF;\n    cursor: pointer;\n    font-size: 14px;\n    font-weight: 500;\n    font-family: inherit;\n    line-height: 20px;\n    transition: background-color 0.3s;\n    min-width: 0;\n\n    &:hover {\n        background-color: #58AFFF;\n    }\n\n    svg {\n        flex-shrink: 0;\n    }\n\n    span {\n        white-space: nowrap;\n        text-overflow: ellipsis;\n        overflow: hidden;\n    }\n}\n\n.import-button {\n    flex: 1;\n    min-height: 40px;\n    border-radius: 8px;\n    gap: 9px;\n    padding: 8px;\n    border: 1px solid #3E9FF8;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    color: #3E9FF8;\n    background-color: transparent;\n    cursor: pointer;\n    font-size: 14px;\n    font-weight: 500;\n    font-family: inherit;\n    line-height: 20px;\n    transition: background-color 0.3s, color 0.3s;\n    min-width: 0;\n\n    &:hover {\n        background-color: #3E9FF8;\n        color: #FFF;\n    }\n\n    svg {\n        flex-shrink: 0;\n    }\n\n    span {\n        white-space: nowrap;\n        text-overflow: ellipsis;\n        overflow: hidden;\n    }\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"container": `GeneralSettingsScreen-module__container___JCIhh`,
	"header": `GeneralSettingsScreen-module__header___AYo0R`,
	"back-button": `GeneralSettingsScreen-module__back-button___rM7cu`,
	"backButton": `GeneralSettingsScreen-module__back-button___rM7cu`,
	"header-title": `GeneralSettingsScreen-module__header-title___uf8oX`,
	"headerTitle": `GeneralSettingsScreen-module__header-title___uf8oX`,
	"list": `GeneralSettingsScreen-module__list___jrxSu`,
	"share-data-item": `GeneralSettingsScreen-module__share-data-item___cCkvN`,
	"shareDataItem": `GeneralSettingsScreen-module__share-data-item___cCkvN`,
	"language-item": `GeneralSettingsScreen-module__language-item___Q_lPR`,
	"languageItem": `GeneralSettingsScreen-module__language-item___Q_lPR`,
	"appearance-item": `GeneralSettingsScreen-module__appearance-item___j1om2`,
	"appearanceItem": `GeneralSettingsScreen-module__appearance-item___j1om2`,
	"save-settings-item": `GeneralSettingsScreen-module__save-settings-item___NG4la`,
	"saveSettingsItem": `GeneralSettingsScreen-module__save-settings-item___NG4la`,
	"backup-settings-item": `GeneralSettingsScreen-module__backup-settings-item___PsMYw`,
	"backupSettingsItem": `GeneralSettingsScreen-module__backup-settings-item___PsMYw`,
	"item-header": `GeneralSettingsScreen-module__item-header___i1c3l`,
	"itemHeader": `GeneralSettingsScreen-module__item-header___i1c3l`,
	"item-title": `GeneralSettingsScreen-module__item-title___rvs59`,
	"itemTitle": `GeneralSettingsScreen-module__item-title___rvs59`,
	"item-description": `GeneralSettingsScreen-module__item-description___khZXz`,
	"itemDescription": `GeneralSettingsScreen-module__item-description___khZXz`,
	"item-toggle-disable": `GeneralSettingsScreen-module__item-toggle-disable___xemoT`,
	"itemToggleDisable": `GeneralSettingsScreen-module__item-toggle-disable___xemoT`,
	"button-new-tab": `GeneralSettingsScreen-module__button-new-tab___KLGUy`,
	"buttonNewTab": `GeneralSettingsScreen-module__button-new-tab___KLGUy`,
	"item-toggle": `GeneralSettingsScreen-module__item-toggle___ZMnwZ`,
	"itemToggle": `GeneralSettingsScreen-module__item-toggle___ZMnwZ`,
	"item-toggle-active": `GeneralSettingsScreen-module__item-toggle-active___j092W`,
	"itemToggleActive": `GeneralSettingsScreen-module__item-toggle-active___j092W`,
	"item-toggle-thumb": `GeneralSettingsScreen-module__item-toggle-thumb___HWzql`,
	"itemToggleThumb": `GeneralSettingsScreen-module__item-toggle-thumb___HWzql`,
	"item-toggle-active-thumb": `GeneralSettingsScreen-module__item-toggle-active-thumb___CMruU`,
	"itemToggleActiveThumb": `GeneralSettingsScreen-module__item-toggle-active-thumb___CMruU`,
	"item-content": `GeneralSettingsScreen-module__item-content___T4UlC`,
	"itemContent": `GeneralSettingsScreen-module__item-content___T4UlC`,
	"export-button": `GeneralSettingsScreen-module__export-button___FTqRx`,
	"exportButton": `GeneralSettingsScreen-module__export-button___FTqRx`,
	"import-button": `GeneralSettingsScreen-module__import-button___G7PbT`,
	"importButton": `GeneralSettingsScreen-module__import-button___G7PbT`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/GetHelp/GetHelp.module.css":
/*!***************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/GetHelp/GetHelp.module.css ***!
  \***************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.GetHelp-module__wrapper____z1UE {
    padding: 20px 16px;
}

.GetHelp-module__title___s4VTD {
    font-size: 24px;
    font-weight: 600;
    line-height: 22px; /* 91.667% */
    letter-spacing: -0.43px;
    color: var(--text-primary);
}

.GetHelp-module__list___XnX2O {
    margin-top: 5px;
}

.GetHelp-module__list-item-wrapper___LqMEA {
    margin: 0 -16px;
    padding: 0 16px;
    transition: background-color 0.3s;
    display: block;
    cursor: pointer;
    text-decoration: none;

    &.GetHelp-module__no-border___DRhBr {
        .GetHelp-module__list-item___y1qPw {
            border-color: transparent;
        }
    }

    &:hover {
        background-color: var(--select-bg-hover);

        .GetHelp-module__list-item___y1qPw {
            border-color: transparent;
        }

        .GetHelp-module__arrow-icon___xZkq5 {
            color: var(--text-primary);
        }
    }
}

.GetHelp-module__list-item___y1qPw {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 137.5% */
    letter-spacing: -0.43px;
    cursor: pointer;
    text-decoration: none;
    border-bottom: 0.33px solid var(--list-item-border-color);
   transition: border-color 0.3s;


  &:hover {
    .GetHelp-module__arrow-icon___xZkq5 {
      color: var(--text-primary);
      transform: translateX(10px);
    }
  }

    svg {
        width: 30px;
        height: auto;
        color: var(--text-primary);
        flex-shrink: 0;
    }

    .GetHelp-module__arrow-icon___xZkq5 {
        color: var(--arrow-color);
        transition: color 0.3s, transform 0.3s;
    }
}

.GetHelp-module__list-item-content___AZ1Sh {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 64px;
    width: 100%;
}

.GetHelp-module__list-item-content-title___WYxYZ {
    flex-grow: 1;
}

.GetHelp-module__go-to-help-center___NdfgK {
    color: var(--get-help-list-item-color);
    font-size: 14px;
    font-weight: 400;
    line-height: 22px; /* 157.143% */
    letter-spacing: -0.43px;
}

.GetHelp-module__download-logs-wrapper___jaypN {
    padding: 16px;
    margin-top: 20px;
    width: 100%;
    border-radius: 8px;
    background: var(--header-bg);

    button {
        width: 100%;
        height: 46px;
        padding: 0 16px;
        border-radius: 8px;
        border: 1px solid #3E9FF8;
        background: var(--get-help-button-bg-color);
        color: #3E9FF8;
        text-align: center;
        font-size: 16px;
        font-weight: 500;
        font-family: inherit;
        line-height: 20px; /* 125% */
        cursor: pointer;
        transition: background-color 0.3s, color 0.3s;

        &:hover {
            background-color: #3E9FF8;
            color: #FFF;
        }
    }
}

.GetHelp-module__download-logs-title___cjBw1 {
    color: var(--text-primary);
    font-size: 18px;
    font-weight: 500;
    line-height: 22px; /* 122.222% */
    letter-spacing: -0.43px;
}

.GetHelp-module__download-logs-text___HGcGV {
    color: var(--text-primary);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 157.143% */
    letter-spacing: -0.43px;
    margin: 5px 0 16px;
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/GetHelp/GetHelp.module.css"],"names":[],"mappings":"AAAA;IACI,kBAAkB;AACtB;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,YAAY;IAC/B,uBAAuB;IACvB,0BAA0B;AAC9B;;AAEA;IACI,eAAe;AACnB;;AAEA;IACI,eAAe;IACf,eAAe;IACf,iCAAiC;IACjC,cAAc;IACd,eAAe;IACf,qBAAqB;;IAErB;QACI;YACI,yBAAyB;QAC7B;IACJ;;IAEA;QACI,wCAAwC;;QAExC;YACI,yBAAyB;QAC7B;;QAEA;YACI,0BAA0B;QAC9B;IACJ;AACJ;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,SAAS;IACT,0BAA0B;IAC1B,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB,EAAE,WAAW;IAC9B,uBAAuB;IACvB,eAAe;IACf,qBAAqB;IACrB,yDAAyD;GAC1D,6BAA6B;;;EAG9B;IACE;MACE,0BAA0B;MAC1B,2BAA2B;IAC7B;EACF;;IAEE;QACI,WAAW;QACX,YAAY;QACZ,0BAA0B;QAC1B,cAAc;IAClB;;IAEA;QACI,yBAAyB;QACzB,sCAAsC;IAC1C;AACJ;;AAEA;IACI,aAAa;IACb,8BAA8B;IAC9B,mBAAmB;IACnB,YAAY;IACZ,WAAW;AACf;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,sCAAsC;IACtC,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,aAAa;IAChC,uBAAuB;AAC3B;;AAEA;IACI,aAAa;IACb,gBAAgB;IAChB,WAAW;IACX,kBAAkB;IAClB,4BAA4B;;IAE5B;QACI,WAAW;QACX,YAAY;QACZ,eAAe;QACf,kBAAkB;QAClB,yBAAyB;QACzB,2CAA2C;QAC3C,cAAc;QACd,kBAAkB;QAClB,eAAe;QACf,gBAAgB;QAChB,oBAAoB;QACpB,iBAAiB,EAAE,SAAS;QAC5B,eAAe;QACf,6CAA6C;;QAE7C;YACI,yBAAyB;YACzB,WAAW;QACf;IACJ;AACJ;;AAEA;IACI,0BAA0B;IAC1B,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,aAAa;IAChC,uBAAuB;AAC3B;;AAEA;IACI,0BAA0B;IAC1B,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB,EAAE,aAAa;IAChC,uBAAuB;IACvB,kBAAkB;AACtB","sourcesContent":[".wrapper {\n    padding: 20px 16px;\n}\n\n.title {\n    font-size: 24px;\n    font-weight: 600;\n    line-height: 22px; /* 91.667% */\n    letter-spacing: -0.43px;\n    color: var(--text-primary);\n}\n\n.list {\n    margin-top: 5px;\n}\n\n.list-item-wrapper {\n    margin: 0 -16px;\n    padding: 0 16px;\n    transition: background-color 0.3s;\n    display: block;\n    cursor: pointer;\n    text-decoration: none;\n\n    &.no-border {\n        .list-item {\n            border-color: transparent;\n        }\n    }\n\n    &:hover {\n        background-color: var(--select-bg-hover);\n\n        .list-item {\n            border-color: transparent;\n        }\n\n        .arrow-icon {\n            color: var(--text-primary);\n        }\n    }\n}\n\n.list-item {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    color: var(--text-primary);\n    font-size: 16px;\n    font-style: normal;\n    font-weight: 400;\n    line-height: 22px; /* 137.5% */\n    letter-spacing: -0.43px;\n    cursor: pointer;\n    text-decoration: none;\n    border-bottom: 0.33px solid var(--list-item-border-color);\n   transition: border-color 0.3s;\n\n\n  &:hover {\n    .arrow-icon {\n      color: var(--text-primary);\n      transform: translateX(10px);\n    }\n  }\n\n    svg {\n        width: 30px;\n        height: auto;\n        color: var(--text-primary);\n        flex-shrink: 0;\n    }\n\n    .arrow-icon {\n        color: var(--arrow-color);\n        transition: color 0.3s, transform 0.3s;\n    }\n}\n\n.list-item-content {\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    height: 64px;\n    width: 100%;\n}\n\n.list-item-content-title {\n    flex-grow: 1;\n}\n\n.go-to-help-center {\n    color: var(--get-help-list-item-color);\n    font-size: 14px;\n    font-weight: 400;\n    line-height: 22px; /* 157.143% */\n    letter-spacing: -0.43px;\n}\n\n.download-logs-wrapper {\n    padding: 16px;\n    margin-top: 20px;\n    width: 100%;\n    border-radius: 8px;\n    background: var(--header-bg);\n\n    button {\n        width: 100%;\n        height: 46px;\n        padding: 0 16px;\n        border-radius: 8px;\n        border: 1px solid #3E9FF8;\n        background: var(--get-help-button-bg-color);\n        color: #3E9FF8;\n        text-align: center;\n        font-size: 16px;\n        font-weight: 500;\n        font-family: inherit;\n        line-height: 20px; /* 125% */\n        cursor: pointer;\n        transition: background-color 0.3s, color 0.3s;\n\n        &:hover {\n            background-color: #3E9FF8;\n            color: #FFF;\n        }\n    }\n}\n\n.download-logs-title {\n    color: var(--text-primary);\n    font-size: 18px;\n    font-weight: 500;\n    line-height: 22px; /* 122.222% */\n    letter-spacing: -0.43px;\n}\n\n.download-logs-text {\n    color: var(--text-primary);\n    font-size: 14px;\n    font-style: normal;\n    font-weight: 400;\n    line-height: 22px; /* 157.143% */\n    letter-spacing: -0.43px;\n    margin: 5px 0 16px;\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `GetHelp-module__wrapper____z1UE`,
	"title": `GetHelp-module__title___s4VTD`,
	"list": `GetHelp-module__list___XnX2O`,
	"list-item-wrapper": `GetHelp-module__list-item-wrapper___LqMEA`,
	"listItemWrapper": `GetHelp-module__list-item-wrapper___LqMEA`,
	"no-border": `GetHelp-module__no-border___DRhBr`,
	"noBorder": `GetHelp-module__no-border___DRhBr`,
	"list-item": `GetHelp-module__list-item___y1qPw`,
	"listItem": `GetHelp-module__list-item___y1qPw`,
	"arrow-icon": `GetHelp-module__arrow-icon___xZkq5`,
	"arrowIcon": `GetHelp-module__arrow-icon___xZkq5`,
	"list-item-content": `GetHelp-module__list-item-content___AZ1Sh`,
	"listItemContent": `GetHelp-module__list-item-content___AZ1Sh`,
	"list-item-content-title": `GetHelp-module__list-item-content-title___WYxYZ`,
	"listItemContentTitle": `GetHelp-module__list-item-content-title___WYxYZ`,
	"go-to-help-center": `GetHelp-module__go-to-help-center___NdfgK`,
	"goToHelpCenter": `GetHelp-module__go-to-help-center___NdfgK`,
	"download-logs-wrapper": `GetHelp-module__download-logs-wrapper___jaypN`,
	"downloadLogsWrapper": `GetHelp-module__download-logs-wrapper___jaypN`,
	"download-logs-title": `GetHelp-module__download-logs-title___cjBw1`,
	"downloadLogsTitle": `GetHelp-module__download-logs-title___cjBw1`,
	"download-logs-text": `GetHelp-module__download-logs-text___HGcGV`,
	"downloadLogsText": `GetHelp-module__download-logs-text___HGcGV`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.module.css":
/*!***********************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.module.css ***!
  \***********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --network-and-privacy-title: #000000;
    --network-and-privacy-text: #3C3C4399;
    --network-and-privacy-border: #54545657;
    --network-and-privacy-item-toggle-border: #E8E8E8;
    --toogle-bg-color-hover: rgba(0, 0, 0, 0.15)
}

.dark{
    --network-and-privacy-title: #FFFFFF;
    --network-and-privacy-text: #FFFFFF99;
    --network-and-privacy-border: #545456;
    --toogle-bg-color-hover: rgba(255, 255, 255, 0.35)
}

.NetworkAndPrivacy-module__container___XybJm {
    padding: 20px 16px;
}

.NetworkAndPrivacy-module__header___p8Ylj {
    display: flex;
    align-items: center;
    cursor: pointer;
    padding-bottom: 5px;
}

.NetworkAndPrivacy-module__back-button____w2Kv {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-right: 12px;
    color: var(--network-and-privacy-title);
    height: fit-content;

    svg {
        display: block;
    }
}

.NetworkAndPrivacy-module__header-title___rvgXW {
    font-size: 24px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -0.43px;
    color: var(--network-and-privacy-title);
}

.NetworkAndPrivacy-module__section-title___gA9c0 {
    display: flex;
    justify-content: space-between;
    color: var(--network-and-privacy-title);
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: -0.43px;
    margin: 20px 0 10px;
}

.NetworkAndPrivacy-module__section-text___DVLWL {
    color: var(--network-and-privacy-text);
    font-size: 14px;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: -0.43px;
    margin-top: 5px;
}

.NetworkAndPrivacy-module__section-border___MKRAm {
    border-bottom: 0.33px solid var(--list-item-border-color);

    &:last-child {
        padding-bottom: unset;
    }
}

.NetworkAndPrivacy-module__section-border___MKRAm:last-child {
    border: 0;
}

.NetworkAndPrivacy-module__section-icon___bYi3i {
    width: 26px;
    height: 26px;
    margin-right: 10px;
}

.NetworkAndPrivacy-module__item-toggle___jbhQx {
    width: 38px;
    height: 22px;
    background-color: var(--toggle-bg-color);
    border-radius: 12px;
    position: relative;
    cursor: pointer;
    transition: background-color 0.3s;
    display: flex;
    align-items: center;
    flex-shrink: 0;

    &:hover {
        background-color: var(--toogle-bg-color-hover);;
    }
}

.NetworkAndPrivacy-module__item-toggle-active____fqlh {
    width: 38px;
    height: 22px;
    border-radius: 12px;
    position: relative;
    cursor: pointer;
    transition: background-color 0.3s;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    background-color: #23CB71;
}

.NetworkAndPrivacy-module__item-toggle-disable___qmwDX {
  opacity: 0.5;
}

.NetworkAndPrivacy-module__item-toggle-thumb___SGlIg {
    width: 18px;
    height: 18px;
    background-color: white;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    border: 0.5px solid rgba(0, 0, 0, 0.02);
    transition: transform 0.3s ease;
    box-shadow: 0 0.25px 0.5px 0.1px rgba(0, 0, 0, 0.12);
}

.NetworkAndPrivacy-module__item-toggle-active-thumb___sDBNG {
    width: 18px;
    height: 18px;
    background-color: white;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    transition: transform 0.3s ease;
    border: 0.5px solid rgba(0, 0, 0, 0.02);
    transform: translateX(16px);
    box-shadow: 0 0.2px 0.25px 0 rgba(0, 0, 0, 0.12);
}

.NetworkAndPrivacy-module__dropdown___Lv82e {
    display: block;
    color: var(--network-and-privacy-title);
    position: relative;
}

.NetworkAndPrivacy-module__section-default-dropdown___XHnYj {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--network-and-privacy-title);
    font-weight: 400;
    font-size: 16px;
}

.NetworkAndPrivacy-module__vpn-dropdown-toggle___NmBjM {
    display: flex;
    align-items: center;
    background: var(--background);
    border: 1px solid var(--border-select);
    cursor: pointer;
    height: 56px;
    transition: border-color 0.3s;
    border-radius: 8px;
    padding: 10px;
    margin-top: 20px;

    &:hover {
        border-color: #3E9FF8;
    }

    &.NetworkAndPrivacy-module__vpn-dropdown-toggle-active___NnDpR {
        border-color: #3E9FF8;
        border-radius: 8px 8px 0 0;

        .NetworkAndPrivacy-module__vpn-arrow___plnOJ {
            transform: rotate(180deg);
        }
    }
}

.NetworkAndPrivacy-module__vpn-selected-country-container___hKxup {
    display: contents;
    color: var(--network-and-privacy-title);
}

.NetworkAndPrivacy-module__vpn-flag-circle___pcyb7 {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--network-and-privacy-title);
    margin-right: 8px;
    border: 0.33px solid #F2F2F7;
}

.NetworkAndPrivacy-module__vpn-selected-country___NBVUL {
    font-weight: 400;
    font-size: 16px;
    color: var(--network-and-privacy-title);
}

.NetworkAndPrivacy-module__vpn-arrow___plnOJ {
    margin-left: auto;
    font-size: 12px;
    transition: all 0.3s;
    color: var(--network-and-privacy-title);
}

.NetworkAndPrivacy-module__vpn-dropdown-item___Egowb {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px;
    height: 56px;
    position: relative;
    cursor: pointer;
    transition: background-color 0.3s;
    color: var(--input-text);

    &:hover {
        background-color: var(--dropdown-hover);
    }
}

.NetworkAndPrivacy-module__vpn-dropdown-item-disabled___zgwOa {
    pointer-events: none;
    opacity: 0.6;
    cursor: not-allowed;
}

.NetworkAndPrivacy-module__vpn-search-input___nt5ak {
    width: 100%;
    padding: 8px;
    border: none;
    border-bottom: 1px solid var(--network-and-privacy-border);
    border-radius: 4px 4px 0 0;
    font-size: 14px;
    color: var(--network-and-privacy-title);
    background-color: transparent;
    box-sizing: border-box;
}

.NetworkAndPrivacy-module__vpn-search-input___nt5ak::placeholder {
    color: var(--network-and-privacy-text);
}

.NetworkAndPrivacy-module__vpn-search-input___nt5ak:focus {
    outline: none;
}

.NetworkAndPrivacy-module__vpn-dropdown___hU9OF {
    position: absolute;
    top: 55px;
    left: 0;
    display: flex;
    flex-direction: column;
    border-radius: 0 0 8px 8px;
    overflow: hidden;
    z-index: 10;
    width: 100%;
    box-sizing: border-box;
    padding: 0;
    background: var(--background);
    border-right: 1px solid #3E9FF8;
    border-bottom: 1px solid #3E9FF8;
    border-left: 1px solid #3E9FF8;
}

.NetworkAndPrivacy-module__vpn-dropdown-items___FBmQ4 {
    overflow-y: auto;
    max-height: 244px;

    &::-webkit-scrollbar {
        width: 8px;
    }

    &::-webkit-scrollbar-track {
        background: var(--background);
        border-radius: 4px;
    }

    &::-webkit-scrollbar-thumb {
        background: var(--button-bg);
        border-radius: 4px;
    }

    &::-webkit-scrollbar-thumb:hover {
        background: var(--button-bg-hover);
    }

    :root {
        .NetworkAndPrivacy-module__dark___Yx1zV & {
            .NetworkAndPrivacy-module__search-list___MUzYq {
                &::-webkit-scrollbar-track {
                    background: transparent;
                }
                &::-webkit-scrollbar-thumb {
                    background: var(--toggle-bg);
                }
                &::-webkit-scrollbar-thumb:hover {
                    background: var(--button-bg-hover);
                }
            }
        }
    }
}

.NetworkAndPrivacy-module__vpn-item-fastest___y8unf {
    position: relative;
}

.NetworkAndPrivacy-module__vpn-dropdown-info___G9v7j {
    display: flex;
    flex-direction: column;
}

.NetworkAndPrivacy-module__vpn-dropdown-title___mbxnx {
    font-size: 14px;
    color: var(--network-and-privacy-title);
}

.NetworkAndPrivacy-module__vpn-dropdown-text___iK8Ri {
    font-size: 12px;
    color: var(--network-and-privacy-text);
}

.NetworkAndPrivacy-module__vpn-dropdown-subtitle___SbUAf {
    font-size: 12px;
    color: var(--text-secondary);
}

.NetworkAndPrivacy-module__vpn-dropdown-item-icon___kLpAF {
    width: 26px;
    height: 26px;
    margin-right: 10px;
}

.NetworkAndPrivacy-module__search___c4yom {
    width: 100%;
    padding: 7px 8px 7px 33px;
    border-radius: 10px;
    color: var(--title-color);
    font-size: 15px;
    border: 1px solid var(--search-input-border-color);
    background: var(--background);
    height: 42px;
    font-family: inherit;
    transition: border-color 0.3s;

    &:focus,
    &:hover {
        outline: none;
        border-color: #3E9FF8;
    }

    &::placeholder {
        color: var(--search-input-placeholder-color);
    }
}

.NetworkAndPrivacy-module__search-container___XHB7X{
    position: relative;
    margin: 0 10px 10px;
}

.NetworkAndPrivacy-module__search-icon___pOlPF {
    position: absolute;
    left: 8px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--search-input-placeholder-color);
}

.NetworkAndPrivacy-module__search-list___MUzYq {
    width: 100%;
    overflow-y: auto;
    max-height: 172px;

    &.NetworkAndPrivacy-module__disbled___CgjdN {
        pointer-events: none;
        cursor: default;
    }

    &::-webkit-scrollbar {
        width: 8px;
      }

    &::-webkit-scrollbar-track {
        background: var(--background);
        border-radius: 4px;
      }

    &::-webkit-scrollbar-thumb {
        background: var(--button-bg);
        border-radius: 4px;
      }

    &::-webkit-scrollbar-thumb:hover {
        background: var(--button-bg-hover);
      }

    :root {
        .NetworkAndPrivacy-module__dark___Yx1zV & {
            .NetworkAndPrivacy-module__search-list___MUzYq {
                &::-webkit-scrollbar-track {
                    background: transparent;
                }
                &::-webkit-scrollbar-thumb {
                    background: var(--toggle-bg);
                }
                &::-webkit-scrollbar-thumb:hover {
                    background: var(--button-bg-hover);
                }
            }
        }
    }
}

.NetworkAndPrivacy-module__search-item___QU2cS {
    display: flex;
    align-items: center;
    padding: 0 0 0 12px;
    cursor: pointer;
    transition: background-color 0.2s ease;
    color: var(--input-text);
    width: 100%;

    &:hover {
        background-color: var(--dropdown-hover);
    }

    &.NetworkAndPrivacy-module__disabled___MUPo_ {
        &:hover {
            background: transparent;
        }
    }

    .NetworkAndPrivacy-module__content___PVHVN {
        display: flex;
        align-items: center;
        gap: 12px;
        flex-grow: 1;
    }

    .NetworkAndPrivacy-module__text___rol8Z {
        flex: 1;
        display: flex;
        flex-direction: column;
        padding: 12px 12px 12px 0;
        border-bottom: 0.333px solid var(--border-color);

        .NetworkAndPrivacy-module__title___e_Eww {
            font-size: 17px;
            line-height: 22px;
            color: var(--text-primary);
        }

        .NetworkAndPrivacy-module__subtitle___VCOkw {
            font-size: 13px;
            line-height: 18px;
            color: var(--text-secondary);
        }
    }
}

.NetworkAndPrivacy-module__disabled___MUPo_ {
    pointer-events: none;
    cursor: default;
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.module.css"],"names":[],"mappings":"AAAA;IACI,oCAAoC;IACpC,qCAAqC;IACrC,uCAAuC;IACvC,iDAAiD;IACjD;AACJ;;AAEA;IACI,oCAAoC;IACpC,qCAAqC;IACrC,qCAAqC;IACrC;AACJ;;AAEA;IACI,kBAAkB;AACtB;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,eAAe;IACf,mBAAmB;AACvB;;AAEA;IACI,uBAAuB;IACvB,YAAY;IACZ,eAAe;IACf,UAAU;IACV,kBAAkB;IAClB,uCAAuC;IACvC,mBAAmB;;IAEnB;QACI,cAAc;IAClB;AACJ;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;IACvB,uCAAuC;AAC3C;;AAEA;IACI,aAAa;IACb,8BAA8B;IAC9B,uCAAuC;IACvC,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;IACvB,mBAAmB;AACvB;;AAEA;IACI,sCAAsC;IACtC,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;IACvB,eAAe;AACnB;;AAEA;IACI,yDAAyD;;IAEzD;QACI,qBAAqB;IACzB;AACJ;;AAEA;IACI,SAAS;AACb;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,kBAAkB;AACtB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,wCAAwC;IACxC,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,iCAAiC;IACjC,aAAa;IACb,mBAAmB;IACnB,cAAc;;IAEd;QACI,8CAA8C;IAClD;AACJ;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,iCAAiC;IACjC,aAAa;IACb,mBAAmB;IACnB,cAAc;IACd,yBAAyB;AAC7B;;AAEA;EACE,YAAY;AACd;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,QAAQ;IACR,SAAS;IACT,uCAAuC;IACvC,+BAA+B;IAC/B,oDAAoD;AACxD;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,uBAAuB;IACvB,kBAAkB;IAClB,kBAAkB;IAClB,QAAQ;IACR,SAAS;IACT,+BAA+B;IAC/B,uCAAuC;IACvC,2BAA2B;IAC3B,gDAAgD;AACpD;;AAEA;IACI,cAAc;IACd,uCAAuC;IACvC,kBAAkB;AACtB;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,8BAA8B;IAC9B,uCAAuC;IACvC,gBAAgB;IAChB,eAAe;AACnB;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,6BAA6B;IAC7B,sCAAsC;IACtC,eAAe;IACf,YAAY;IACZ,6BAA6B;IAC7B,kBAAkB;IAClB,aAAa;IACb,gBAAgB;;IAEhB;QACI,qBAAqB;IACzB;;IAEA;QACI,qBAAqB;QACrB,0BAA0B;;QAE1B;YACI,yBAAyB;QAC7B;IACJ;AACJ;;AAEA;IACI,iBAAiB;IACjB,uCAAuC;AAC3C;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,uCAAuC;IACvC,iBAAiB;IACjB,4BAA4B;AAChC;;AAEA;IACI,gBAAgB;IAChB,eAAe;IACf,uCAAuC;AAC3C;;AAEA;IACI,iBAAiB;IACjB,eAAe;IACf,oBAAoB;IACpB,uCAAuC;AAC3C;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,QAAQ;IACR,aAAa;IACb,YAAY;IACZ,kBAAkB;IAClB,eAAe;IACf,iCAAiC;IACjC,wBAAwB;;IAExB;QACI,uCAAuC;IAC3C;AACJ;;AAEA;IACI,oBAAoB;IACpB,YAAY;IACZ,mBAAmB;AACvB;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,YAAY;IACZ,0DAA0D;IAC1D,0BAA0B;IAC1B,eAAe;IACf,uCAAuC;IACvC,6BAA6B;IAC7B,sBAAsB;AAC1B;;AAEA;IACI,sCAAsC;AAC1C;;AAEA;IACI,aAAa;AACjB;;AAEA;IACI,kBAAkB;IAClB,SAAS;IACT,OAAO;IACP,aAAa;IACb,sBAAsB;IACtB,0BAA0B;IAC1B,gBAAgB;IAChB,WAAW;IACX,WAAW;IACX,sBAAsB;IACtB,UAAU;IACV,6BAA6B;IAC7B,+BAA+B;IAC/B,gCAAgC;IAChC,8BAA8B;AAClC;;AAEA;IACI,gBAAgB;IAChB,iBAAiB;;IAEjB;QACI,UAAU;IACd;;IAEA;QACI,6BAA6B;QAC7B,kBAAkB;IACtB;;IAEA;QACI,4BAA4B;QAC5B,kBAAkB;IACtB;;IAEA;QACI,kCAAkC;IACtC;;IAEA;QACI;YACI;gBACI;oBACI,uBAAuB;gBAC3B;gBACA;oBACI,4BAA4B;gBAChC;gBACA;oBACI,kCAAkC;gBACtC;YACJ;QACJ;IACJ;AACJ;;AAEA;IACI,kBAAkB;AACtB;;AAEA;IACI,aAAa;IACb,sBAAsB;AAC1B;;AAEA;IACI,eAAe;IACf,uCAAuC;AAC3C;;AAEA;IACI,eAAe;IACf,sCAAsC;AAC1C;;AAEA;IACI,eAAe;IACf,4BAA4B;AAChC;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,kBAAkB;AACtB;;AAEA;IACI,WAAW;IACX,yBAAyB;IACzB,mBAAmB;IACnB,yBAAyB;IACzB,eAAe;IACf,kDAAkD;IAClD,6BAA6B;IAC7B,YAAY;IACZ,oBAAoB;IACpB,6BAA6B;;IAE7B;;QAEI,aAAa;QACb,qBAAqB;IACzB;;IAEA;QACI,4CAA4C;IAChD;AACJ;;AAEA;IACI,kBAAkB;IAClB,mBAAmB;AACvB;;AAEA;IACI,kBAAkB;IAClB,SAAS;IACT,QAAQ;IACR,2BAA2B;IAC3B,4CAA4C;AAChD;;AAEA;IACI,WAAW;IACX,gBAAgB;IAChB,iBAAiB;;IAEjB;QACI,oBAAoB;QACpB,eAAe;IACnB;;IAEA;QACI,UAAU;MACZ;;IAEF;QACI,6BAA6B;QAC7B,kBAAkB;MACpB;;IAEF;QACI,4BAA4B;QAC5B,kBAAkB;MACpB;;IAEF;QACI,kCAAkC;MACpC;;IAEF;QACI;YACI;gBACI;oBACI,uBAAuB;gBAC3B;gBACA;oBACI,4BAA4B;gBAChC;gBACA;oBACI,kCAAkC;gBACtC;YACJ;QACJ;IACJ;AACJ;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,mBAAmB;IACnB,eAAe;IACf,sCAAsC;IACtC,wBAAwB;IACxB,WAAW;;IAEX;QACI,uCAAuC;IAC3C;;IAEA;QACI;YACI,uBAAuB;QAC3B;IACJ;;IAEA;QACI,aAAa;QACb,mBAAmB;QACnB,SAAS;QACT,YAAY;IAChB;;IAEA;QACI,OAAO;QACP,aAAa;QACb,sBAAsB;QACtB,yBAAyB;QACzB,gDAAgD;;QAEhD;YACI,eAAe;YACf,iBAAiB;YACjB,0BAA0B;QAC9B;;QAEA;YACI,eAAe;YACf,iBAAiB;YACjB,4BAA4B;QAChC;IACJ;AACJ;;AAEA;IACI,oBAAoB;IACpB,eAAe;AACnB","sourcesContent":[":root {\n    --network-and-privacy-title: #000000;\n    --network-and-privacy-text: #3C3C4399;\n    --network-and-privacy-border: #54545657;\n    --network-and-privacy-item-toggle-border: #E8E8E8;\n    --toogle-bg-color-hover: rgba(0, 0, 0, 0.15)\n}\n\n:global(.dark ){\n    --network-and-privacy-title: #FFFFFF;\n    --network-and-privacy-text: #FFFFFF99;\n    --network-and-privacy-border: #545456;\n    --toogle-bg-color-hover: rgba(255, 255, 255, 0.35)\n}\n\n.container {\n    padding: 20px 16px;\n}\n\n.header {\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n    padding-bottom: 5px;\n}\n\n.back-button {\n    background: transparent;\n    border: none;\n    cursor: pointer;\n    padding: 0;\n    margin-right: 12px;\n    color: var(--network-and-privacy-title);\n    height: fit-content;\n\n    svg {\n        display: block;\n    }\n}\n\n.header-title {\n    font-size: 24px;\n    font-weight: 600;\n    line-height: 22px;\n    letter-spacing: -0.43px;\n    color: var(--network-and-privacy-title);\n}\n\n.section-title {\n    display: flex;\n    justify-content: space-between;\n    color: var(--network-and-privacy-title);\n    font-size: 16px;\n    font-weight: 400;\n    line-height: 22px;\n    letter-spacing: -0.43px;\n    margin: 20px 0 10px;\n}\n\n.section-text {\n    color: var(--network-and-privacy-text);\n    font-size: 14px;\n    font-weight: 400;\n    line-height: 130%;\n    letter-spacing: -0.43px;\n    margin-top: 5px;\n}\n\n.section-border {\n    border-bottom: 0.33px solid var(--list-item-border-color);\n\n    &:last-child {\n        padding-bottom: unset;\n    }\n}\n\n.section-border:last-child {\n    border: 0;\n}\n\n.section-icon {\n    width: 26px;\n    height: 26px;\n    margin-right: 10px;\n}\n\n.item-toggle {\n    width: 38px;\n    height: 22px;\n    background-color: var(--toggle-bg-color);\n    border-radius: 12px;\n    position: relative;\n    cursor: pointer;\n    transition: background-color 0.3s;\n    display: flex;\n    align-items: center;\n    flex-shrink: 0;\n\n    &:hover {\n        background-color: var(--toogle-bg-color-hover);;\n    }\n}\n\n.item-toggle-active {\n    width: 38px;\n    height: 22px;\n    border-radius: 12px;\n    position: relative;\n    cursor: pointer;\n    transition: background-color 0.3s;\n    display: flex;\n    align-items: center;\n    flex-shrink: 0;\n    background-color: #23CB71;\n}\n\n.item-toggle-disable {\n  opacity: 0.5;\n}\n\n.item-toggle-thumb {\n    width: 18px;\n    height: 18px;\n    background-color: white;\n    border-radius: 50%;\n    position: absolute;\n    top: 2px;\n    left: 2px;\n    border: 0.5px solid rgba(0, 0, 0, 0.02);\n    transition: transform 0.3s ease;\n    box-shadow: 0 0.25px 0.5px 0.1px rgba(0, 0, 0, 0.12);\n}\n\n.item-toggle-active-thumb {\n    width: 18px;\n    height: 18px;\n    background-color: white;\n    border-radius: 50%;\n    position: absolute;\n    top: 2px;\n    left: 2px;\n    transition: transform 0.3s ease;\n    border: 0.5px solid rgba(0, 0, 0, 0.02);\n    transform: translateX(16px);\n    box-shadow: 0 0.2px 0.25px 0 rgba(0, 0, 0, 0.12);\n}\n\n.dropdown {\n    display: block;\n    color: var(--network-and-privacy-title);\n    position: relative;\n}\n\n.section-default-dropdown {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    color: var(--network-and-privacy-title);\n    font-weight: 400;\n    font-size: 16px;\n}\n\n.vpn-dropdown-toggle {\n    display: flex;\n    align-items: center;\n    background: var(--background);\n    border: 1px solid var(--border-select);\n    cursor: pointer;\n    height: 56px;\n    transition: border-color 0.3s;\n    border-radius: 8px;\n    padding: 10px;\n    margin-top: 20px;\n\n    &:hover {\n        border-color: #3E9FF8;\n    }\n\n    &.vpn-dropdown-toggle-active {\n        border-color: #3E9FF8;\n        border-radius: 8px 8px 0 0;\n\n        .vpn-arrow {\n            transform: rotate(180deg);\n        }\n    }\n}\n\n.vpn-selected-country-container {\n    display: contents;\n    color: var(--network-and-privacy-title);\n}\n\n.vpn-flag-circle {\n    width: 30px;\n    height: 30px;\n    border-radius: 50%;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    color: var(--network-and-privacy-title);\n    margin-right: 8px;\n    border: 0.33px solid #F2F2F7;\n}\n\n.vpn-selected-country {\n    font-weight: 400;\n    font-size: 16px;\n    color: var(--network-and-privacy-title);\n}\n\n.vpn-arrow {\n    margin-left: auto;\n    font-size: 12px;\n    transition: all 0.3s;\n    color: var(--network-and-privacy-title);\n}\n\n.vpn-dropdown-item {\n    display: flex;\n    align-items: center;\n    gap: 8px;\n    padding: 10px;\n    height: 56px;\n    position: relative;\n    cursor: pointer;\n    transition: background-color 0.3s;\n    color: var(--input-text);\n\n    &:hover {\n        background-color: var(--dropdown-hover);\n    }\n}\n\n.vpn-dropdown-item-disabled {\n    pointer-events: none;\n    opacity: 0.6;\n    cursor: not-allowed;\n}\n\n.vpn-search-input {\n    width: 100%;\n    padding: 8px;\n    border: none;\n    border-bottom: 1px solid var(--network-and-privacy-border);\n    border-radius: 4px 4px 0 0;\n    font-size: 14px;\n    color: var(--network-and-privacy-title);\n    background-color: transparent;\n    box-sizing: border-box;\n}\n\n.vpn-search-input::placeholder {\n    color: var(--network-and-privacy-text);\n}\n\n.vpn-search-input:focus {\n    outline: none;\n}\n\n.vpn-dropdown {\n    position: absolute;\n    top: 55px;\n    left: 0;\n    display: flex;\n    flex-direction: column;\n    border-radius: 0 0 8px 8px;\n    overflow: hidden;\n    z-index: 10;\n    width: 100%;\n    box-sizing: border-box;\n    padding: 0;\n    background: var(--background);\n    border-right: 1px solid #3E9FF8;\n    border-bottom: 1px solid #3E9FF8;\n    border-left: 1px solid #3E9FF8;\n}\n\n.vpn-dropdown-items {\n    overflow-y: auto;\n    max-height: 244px;\n\n    &::-webkit-scrollbar {\n        width: 8px;\n    }\n\n    &::-webkit-scrollbar-track {\n        background: var(--background);\n        border-radius: 4px;\n    }\n\n    &::-webkit-scrollbar-thumb {\n        background: var(--button-bg);\n        border-radius: 4px;\n    }\n\n    &::-webkit-scrollbar-thumb:hover {\n        background: var(--button-bg-hover);\n    }\n\n    :root {\n        .dark & {\n            .search-list {\n                &::-webkit-scrollbar-track {\n                    background: transparent;\n                }\n                &::-webkit-scrollbar-thumb {\n                    background: var(--toggle-bg);\n                }\n                &::-webkit-scrollbar-thumb:hover {\n                    background: var(--button-bg-hover);\n                }\n            }\n        }\n    }\n}\n\n.vpn-item-fastest {\n    position: relative;\n}\n\n.vpn-dropdown-info {\n    display: flex;\n    flex-direction: column;\n}\n\n.vpn-dropdown-title {\n    font-size: 14px;\n    color: var(--network-and-privacy-title);\n}\n\n.vpn-dropdown-text {\n    font-size: 12px;\n    color: var(--network-and-privacy-text);\n}\n\n.vpn-dropdown-subtitle {\n    font-size: 12px;\n    color: var(--text-secondary);\n}\n\n.vpn-dropdown-item-icon {\n    width: 26px;\n    height: 26px;\n    margin-right: 10px;\n}\n\n.search {\n    width: 100%;\n    padding: 7px 8px 7px 33px;\n    border-radius: 10px;\n    color: var(--title-color);\n    font-size: 15px;\n    border: 1px solid var(--search-input-border-color);\n    background: var(--background);\n    height: 42px;\n    font-family: inherit;\n    transition: border-color 0.3s;\n\n    &:focus,\n    &:hover {\n        outline: none;\n        border-color: #3E9FF8;\n    }\n\n    &::placeholder {\n        color: var(--search-input-placeholder-color);\n    }\n}\n\n.search-container{\n    position: relative;\n    margin: 0 10px 10px;\n}\n\n.search-icon {\n    position: absolute;\n    left: 8px;\n    top: 50%;\n    transform: translateY(-50%);\n    color: var(--search-input-placeholder-color);\n}\n\n.search-list {\n    width: 100%;\n    overflow-y: auto;\n    max-height: 172px;\n\n    &.disbled {\n        pointer-events: none;\n        cursor: default;\n    }\n\n    &::-webkit-scrollbar {\n        width: 8px;\n      }\n\n    &::-webkit-scrollbar-track {\n        background: var(--background);\n        border-radius: 4px;\n      }\n\n    &::-webkit-scrollbar-thumb {\n        background: var(--button-bg);\n        border-radius: 4px;\n      }\n\n    &::-webkit-scrollbar-thumb:hover {\n        background: var(--button-bg-hover);\n      }\n\n    :root {\n        .dark & {\n            .search-list {\n                &::-webkit-scrollbar-track {\n                    background: transparent;\n                }\n                &::-webkit-scrollbar-thumb {\n                    background: var(--toggle-bg);\n                }\n                &::-webkit-scrollbar-thumb:hover {\n                    background: var(--button-bg-hover);\n                }\n            }\n        }\n    }\n}\n\n.search-item {\n    display: flex;\n    align-items: center;\n    padding: 0 0 0 12px;\n    cursor: pointer;\n    transition: background-color 0.2s ease;\n    color: var(--input-text);\n    width: 100%;\n\n    &:hover {\n        background-color: var(--dropdown-hover);\n    }\n\n    &.disabled {\n        &:hover {\n            background: transparent;\n        }\n    }\n\n    .content {\n        display: flex;\n        align-items: center;\n        gap: 12px;\n        flex-grow: 1;\n    }\n\n    .text {\n        flex: 1;\n        display: flex;\n        flex-direction: column;\n        padding: 12px 12px 12px 0;\n        border-bottom: 0.333px solid var(--border-color);\n\n        .title {\n            font-size: 17px;\n            line-height: 22px;\n            color: var(--text-primary);\n        }\n\n        .subtitle {\n            font-size: 13px;\n            line-height: 18px;\n            color: var(--text-secondary);\n        }\n    }\n}\n\n.disabled {\n    pointer-events: none;\n    cursor: default;\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"container": `NetworkAndPrivacy-module__container___XybJm`,
	"header": `NetworkAndPrivacy-module__header___p8Ylj`,
	"back-button": `NetworkAndPrivacy-module__back-button____w2Kv`,
	"backButton": `NetworkAndPrivacy-module__back-button____w2Kv`,
	"header-title": `NetworkAndPrivacy-module__header-title___rvgXW`,
	"headerTitle": `NetworkAndPrivacy-module__header-title___rvgXW`,
	"section-title": `NetworkAndPrivacy-module__section-title___gA9c0`,
	"sectionTitle": `NetworkAndPrivacy-module__section-title___gA9c0`,
	"section-text": `NetworkAndPrivacy-module__section-text___DVLWL`,
	"sectionText": `NetworkAndPrivacy-module__section-text___DVLWL`,
	"section-border": `NetworkAndPrivacy-module__section-border___MKRAm`,
	"sectionBorder": `NetworkAndPrivacy-module__section-border___MKRAm`,
	"section-icon": `NetworkAndPrivacy-module__section-icon___bYi3i`,
	"sectionIcon": `NetworkAndPrivacy-module__section-icon___bYi3i`,
	"item-toggle": `NetworkAndPrivacy-module__item-toggle___jbhQx`,
	"itemToggle": `NetworkAndPrivacy-module__item-toggle___jbhQx`,
	"item-toggle-active": `NetworkAndPrivacy-module__item-toggle-active____fqlh`,
	"itemToggleActive": `NetworkAndPrivacy-module__item-toggle-active____fqlh`,
	"item-toggle-disable": `NetworkAndPrivacy-module__item-toggle-disable___qmwDX`,
	"itemToggleDisable": `NetworkAndPrivacy-module__item-toggle-disable___qmwDX`,
	"item-toggle-thumb": `NetworkAndPrivacy-module__item-toggle-thumb___SGlIg`,
	"itemToggleThumb": `NetworkAndPrivacy-module__item-toggle-thumb___SGlIg`,
	"item-toggle-active-thumb": `NetworkAndPrivacy-module__item-toggle-active-thumb___sDBNG`,
	"itemToggleActiveThumb": `NetworkAndPrivacy-module__item-toggle-active-thumb___sDBNG`,
	"dropdown": `NetworkAndPrivacy-module__dropdown___Lv82e`,
	"section-default-dropdown": `NetworkAndPrivacy-module__section-default-dropdown___XHnYj`,
	"sectionDefaultDropdown": `NetworkAndPrivacy-module__section-default-dropdown___XHnYj`,
	"vpn-dropdown-toggle": `NetworkAndPrivacy-module__vpn-dropdown-toggle___NmBjM`,
	"vpnDropdownToggle": `NetworkAndPrivacy-module__vpn-dropdown-toggle___NmBjM`,
	"vpn-dropdown-toggle-active": `NetworkAndPrivacy-module__vpn-dropdown-toggle-active___NnDpR`,
	"vpnDropdownToggleActive": `NetworkAndPrivacy-module__vpn-dropdown-toggle-active___NnDpR`,
	"vpn-arrow": `NetworkAndPrivacy-module__vpn-arrow___plnOJ`,
	"vpnArrow": `NetworkAndPrivacy-module__vpn-arrow___plnOJ`,
	"vpn-selected-country-container": `NetworkAndPrivacy-module__vpn-selected-country-container___hKxup`,
	"vpnSelectedCountryContainer": `NetworkAndPrivacy-module__vpn-selected-country-container___hKxup`,
	"vpn-flag-circle": `NetworkAndPrivacy-module__vpn-flag-circle___pcyb7`,
	"vpnFlagCircle": `NetworkAndPrivacy-module__vpn-flag-circle___pcyb7`,
	"vpn-selected-country": `NetworkAndPrivacy-module__vpn-selected-country___NBVUL`,
	"vpnSelectedCountry": `NetworkAndPrivacy-module__vpn-selected-country___NBVUL`,
	"vpn-dropdown-item": `NetworkAndPrivacy-module__vpn-dropdown-item___Egowb`,
	"vpnDropdownItem": `NetworkAndPrivacy-module__vpn-dropdown-item___Egowb`,
	"vpn-dropdown-item-disabled": `NetworkAndPrivacy-module__vpn-dropdown-item-disabled___zgwOa`,
	"vpnDropdownItemDisabled": `NetworkAndPrivacy-module__vpn-dropdown-item-disabled___zgwOa`,
	"vpn-search-input": `NetworkAndPrivacy-module__vpn-search-input___nt5ak`,
	"vpnSearchInput": `NetworkAndPrivacy-module__vpn-search-input___nt5ak`,
	"vpn-dropdown": `NetworkAndPrivacy-module__vpn-dropdown___hU9OF`,
	"vpnDropdown": `NetworkAndPrivacy-module__vpn-dropdown___hU9OF`,
	"vpn-dropdown-items": `NetworkAndPrivacy-module__vpn-dropdown-items___FBmQ4`,
	"vpnDropdownItems": `NetworkAndPrivacy-module__vpn-dropdown-items___FBmQ4`,
	"dark": `NetworkAndPrivacy-module__dark___Yx1zV`,
	"search-list": `NetworkAndPrivacy-module__search-list___MUzYq`,
	"searchList": `NetworkAndPrivacy-module__search-list___MUzYq`,
	"vpn-item-fastest": `NetworkAndPrivacy-module__vpn-item-fastest___y8unf`,
	"vpnItemFastest": `NetworkAndPrivacy-module__vpn-item-fastest___y8unf`,
	"vpn-dropdown-info": `NetworkAndPrivacy-module__vpn-dropdown-info___G9v7j`,
	"vpnDropdownInfo": `NetworkAndPrivacy-module__vpn-dropdown-info___G9v7j`,
	"vpn-dropdown-title": `NetworkAndPrivacy-module__vpn-dropdown-title___mbxnx`,
	"vpnDropdownTitle": `NetworkAndPrivacy-module__vpn-dropdown-title___mbxnx`,
	"vpn-dropdown-text": `NetworkAndPrivacy-module__vpn-dropdown-text___iK8Ri`,
	"vpnDropdownText": `NetworkAndPrivacy-module__vpn-dropdown-text___iK8Ri`,
	"vpn-dropdown-subtitle": `NetworkAndPrivacy-module__vpn-dropdown-subtitle___SbUAf`,
	"vpnDropdownSubtitle": `NetworkAndPrivacy-module__vpn-dropdown-subtitle___SbUAf`,
	"vpn-dropdown-item-icon": `NetworkAndPrivacy-module__vpn-dropdown-item-icon___kLpAF`,
	"vpnDropdownItemIcon": `NetworkAndPrivacy-module__vpn-dropdown-item-icon___kLpAF`,
	"search": `NetworkAndPrivacy-module__search___c4yom`,
	"search-container": `NetworkAndPrivacy-module__search-container___XHB7X`,
	"searchContainer": `NetworkAndPrivacy-module__search-container___XHB7X`,
	"search-icon": `NetworkAndPrivacy-module__search-icon___pOlPF`,
	"searchIcon": `NetworkAndPrivacy-module__search-icon___pOlPF`,
	"disbled": `NetworkAndPrivacy-module__disbled___CgjdN`,
	"search-item": `NetworkAndPrivacy-module__search-item___QU2cS`,
	"searchItem": `NetworkAndPrivacy-module__search-item___QU2cS`,
	"disabled": `NetworkAndPrivacy-module__disabled___MUPo_`,
	"content": `NetworkAndPrivacy-module__content___PVHVN`,
	"text": `NetworkAndPrivacy-module__text___rol8Z`,
	"title": `NetworkAndPrivacy-module__title___e_Eww`,
	"subtitle": `NetworkAndPrivacy-module__subtitle___VCOkw`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.module.css":
/*!*******************************************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.module.css ***!
  \*******************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.SplitTunnelingList-module__split-tunneling-section___Erx1V {
    display: block;
}

.SplitTunnelingList-module__split-tunneling-section___Erx1V p {
    text-align: center;
    color: var(--title-color);
}

.SplitTunnelingList-module__split-tunneling-input___jXvJz {
  flex: 1;
  padding: 10px 13px;
  width: 100%;
  margin: 10px 0;
  border: 1px solid var(--input-border);
  border-radius: 8px;
  font-size: 16px;
  line-height: 20px;
  color: var(--input-text);
  background: var(--input-bg);

  &:focus {
    outline: none;
    border-color: #3E9FF8;
  }
}

.SplitTunnelingList-module__split-tunneling-input___jXvJz:disabled {
  background: var(--button-bg);
  color: var(--input-border);
  cursor: not-allowed;
}

.SplitTunnelingList-module__split-tunneling-list-title___xYdH6 {
  font-size: 16px;
  line-height: 22px;
  font-weight: 400;
  letter-spacing: -0.43px;
  color: var(--title-color);
  margin-top: 20px;
  margin-bottom: 10px;
}

.SplitTunnelingList-module__split-tunneling-item___vlkBE {
  display: flex;
  align-items: center;
  padding: 0 10px;
  margin-bottom: 10px;
  height: 56px;
  border-radius: 8px;
  border: 1px solid var(--border-color);
}

.SplitTunnelingList-module__edit-button___h6ui_,
.SplitTunnelingList-module__remove-button___QhbPm {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 8px;
  font-size: 12px;
  font-weight: 500;
  background-color: transparent;
  color: var(--text-primary);
  border: 1px solid var(--border-select);
  cursor: pointer;
  transition: border-color 0.3s;

  svg {
    opacity: 0.5;
    transition: opacity 0.3s;
  }
}

.SplitTunnelingList-module__add-button___rYy_6 {
  height: 46px;
  width: 100%;
  padding: 8px 16px;
  border: none;
  border-radius: 8px;
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 20px;
  cursor: pointer;
  background: #3E9FF8;
  color: #fff;
  transition: background-color 0.3s, opacity 0.3s;

  &:hover {
    background-color: #58AFFF;
  }
}

.SplitTunnelingList-module__add-button___rYy_6:disabled {
  opacity: 0.6;
  pointer-events: none;
}

.SplitTunnelingList-module__edit-button___h6ui_ {
  margin-left: auto;
}

.SplitTunnelingList-module__remove-button___QhbPm {
  margin-left: 4px;
}

.SplitTunnelingList-module__edit-button___h6ui_:hover,
.SplitTunnelingList-module__remove-button___QhbPm:hover {
  border-color: #3E9FF8;

  svg {
    opacity: 1;
  }
}

.SplitTunnelingList-module__split-tunneling-item-input___BtdSO {
  all: unset;
  font-size: 16px;
  color: var(--title-color);
}

.SplitTunnelingList-module__error-message___u3YYt {
  margin-bottom: 10px;
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.module.css"],"names":[],"mappings":"AAAA;IACI,cAAc;AAClB;;AAEA;IACI,kBAAkB;IAClB,yBAAyB;AAC7B;;AAEA;EACE,OAAO;EACP,kBAAkB;EAClB,WAAW;EACX,cAAc;EACd,qCAAqC;EACrC,kBAAkB;EAClB,eAAe;EACf,iBAAiB;EACjB,wBAAwB;EACxB,2BAA2B;;EAE3B;IACE,aAAa;IACb,qBAAqB;EACvB;AACF;;AAEA;EACE,4BAA4B;EAC5B,0BAA0B;EAC1B,mBAAmB;AACrB;;AAEA;EACE,eAAe;EACf,iBAAiB;EACjB,gBAAgB;EAChB,uBAAuB;EACvB,yBAAyB;EACzB,gBAAgB;EAChB,mBAAmB;AACrB;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,eAAe;EACf,mBAAmB;EACnB,YAAY;EACZ,kBAAkB;EAClB,qCAAqC;AACvC;;AAEA;;EAEE,WAAW;EACX,YAAY;EACZ,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,kBAAkB;EAClB,eAAe;EACf,gBAAgB;EAChB,6BAA6B;EAC7B,0BAA0B;EAC1B,sCAAsC;EACtC,eAAe;EACf,6BAA6B;;EAE7B;IACE,YAAY;IACZ,wBAAwB;EAC1B;AACF;;AAEA;EACE,YAAY;EACZ,WAAW;EACX,iBAAiB;EACjB,YAAY;EACZ,kBAAkB;EAClB,oBAAoB;EACpB,eAAe;EACf,gBAAgB;EAChB,iBAAiB;EACjB,eAAe;EACf,mBAAmB;EACnB,WAAW;EACX,+CAA+C;;EAE/C;IACE,yBAAyB;EAC3B;AACF;;AAEA;EACE,YAAY;EACZ,oBAAoB;AACtB;;AAEA;EACE,iBAAiB;AACnB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;;EAEE,qBAAqB;;EAErB;IACE,UAAU;EACZ;AACF;;AAEA;EACE,UAAU;EACV,eAAe;EACf,yBAAyB;AAC3B;;AAEA;EACE,mBAAmB;AACrB","sourcesContent":[".split-tunneling-section {\n    display: block;\n}\n\n.split-tunneling-section p {\n    text-align: center;\n    color: var(--title-color);\n}\n\n.split-tunneling-input {\n  flex: 1;\n  padding: 10px 13px;\n  width: 100%;\n  margin: 10px 0;\n  border: 1px solid var(--input-border);\n  border-radius: 8px;\n  font-size: 16px;\n  line-height: 20px;\n  color: var(--input-text);\n  background: var(--input-bg);\n\n  &:focus {\n    outline: none;\n    border-color: #3E9FF8;\n  }\n}\n\n.split-tunneling-input:disabled {\n  background: var(--button-bg);\n  color: var(--input-border);\n  cursor: not-allowed;\n}\n\n.split-tunneling-list-title {\n  font-size: 16px;\n  line-height: 22px;\n  font-weight: 400;\n  letter-spacing: -0.43px;\n  color: var(--title-color);\n  margin-top: 20px;\n  margin-bottom: 10px;\n}\n\n.split-tunneling-item {\n  display: flex;\n  align-items: center;\n  padding: 0 10px;\n  margin-bottom: 10px;\n  height: 56px;\n  border-radius: 8px;\n  border: 1px solid var(--border-color);\n}\n\n.edit-button,\n.remove-button {\n  width: 30px;\n  height: 30px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  border-radius: 8px;\n  font-size: 12px;\n  font-weight: 500;\n  background-color: transparent;\n  color: var(--text-primary);\n  border: 1px solid var(--border-select);\n  cursor: pointer;\n  transition: border-color 0.3s;\n\n  svg {\n    opacity: 0.5;\n    transition: opacity 0.3s;\n  }\n}\n\n.add-button {\n  height: 46px;\n  width: 100%;\n  padding: 8px 16px;\n  border: none;\n  border-radius: 8px;\n  font-family: inherit;\n  font-size: 16px;\n  font-weight: 500;\n  line-height: 20px;\n  cursor: pointer;\n  background: #3E9FF8;\n  color: #fff;\n  transition: background-color 0.3s, opacity 0.3s;\n\n  &:hover {\n    background-color: #58AFFF;\n  }\n}\n\n.add-button:disabled {\n  opacity: 0.6;\n  pointer-events: none;\n}\n\n.edit-button {\n  margin-left: auto;\n}\n\n.remove-button {\n  margin-left: 4px;\n}\n\n.edit-button:hover,\n.remove-button:hover {\n  border-color: #3E9FF8;\n\n  svg {\n    opacity: 1;\n  }\n}\n\n.split-tunneling-item-input {\n  all: unset;\n  font-size: 16px;\n  color: var(--title-color);\n}\n\n.error-message {\n  margin-bottom: 10px;\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"split-tunneling-section": `SplitTunnelingList-module__split-tunneling-section___Erx1V`,
	"splitTunnelingSection": `SplitTunnelingList-module__split-tunneling-section___Erx1V`,
	"split-tunneling-input": `SplitTunnelingList-module__split-tunneling-input___jXvJz`,
	"splitTunnelingInput": `SplitTunnelingList-module__split-tunneling-input___jXvJz`,
	"split-tunneling-list-title": `SplitTunnelingList-module__split-tunneling-list-title___xYdH6`,
	"splitTunnelingListTitle": `SplitTunnelingList-module__split-tunneling-list-title___xYdH6`,
	"split-tunneling-item": `SplitTunnelingList-module__split-tunneling-item___vlkBE`,
	"splitTunnelingItem": `SplitTunnelingList-module__split-tunneling-item___vlkBE`,
	"edit-button": `SplitTunnelingList-module__edit-button___h6ui_`,
	"editButton": `SplitTunnelingList-module__edit-button___h6ui_`,
	"remove-button": `SplitTunnelingList-module__remove-button___QhbPm`,
	"removeButton": `SplitTunnelingList-module__remove-button___QhbPm`,
	"add-button": `SplitTunnelingList-module__add-button___rYy_6`,
	"addButton": `SplitTunnelingList-module__add-button___rYy_6`,
	"split-tunneling-item-input": `SplitTunnelingList-module__split-tunneling-item-input___BtdSO`,
	"splitTunnelingItemInput": `SplitTunnelingList-module__split-tunneling-item-input___BtdSO`,
	"error-message": `SplitTunnelingList-module__error-message___u3YYt`,
	"errorMessage": `SplitTunnelingList-module__error-message___u3YYt`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/Profile/Profile.module.css":
/*!***************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/Profile/Profile.module.css ***!
  \***************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --logout-button-bg-color-hover:  rgba(60, 60, 67, 0.30);
    --logout-button-border-color-hover: transparent;
}

.dark{
    --logout-button-bg-color-hover: rgba(229, 229, 255, 0.3);
    --logout-button-border-color-hover: transparent;
}

.Profile-module__wrapper___JiZb1 {
    padding: 20px 16px;
}

.Profile-module__title___EvCX5 {
    font-size: 24px;
    font-weight: 600;
    line-height: 22px; /* 91.667% */
    letter-spacing: -0.43px;
    color: var(--text-primary);
}

.Profile-module__profile-info-wrapper___xukBN {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;

    button {
        height: 46px;
        padding: 10px 16px;
        border-radius: 8px;
        background:  #3E9FF8;
        color: #FFF;
        text-align: center;
        font-size: 16px;
        font-weight: 500;
        line-height: 20px; /* 125% */
        font-family: inherit;
        cursor: pointer;
        border: unset;
        transition: background-color 0.3s;

        &:hover {
            background-color: #58AFFF;
        }
    }
}

.Profile-module__profile-info-item___Wv5u6 {
    width: 100%;
    padding: 11px 16px;
    border-radius: 5px;
    background: var(--header-bg);
}

.Profile-module__profile-info-item-label___DEBNb {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--text-primary);
    font-size: 12px;
    font-weight: 400;
    line-height: 18px; /* 150% */
    letter-spacing: -0.08px;

    svg {
        width: 12px;
        height: auto;
    }
}

.Profile-module__profile-info-item-value___OL9rg {
    color: var(--text-primary);
    font-size: 18px;
    font-weight: 600;
    line-height: 200%; /* 36px */
    letter-spacing: 0.4px;
}

.Profile-module__list___Ij75U {
    margin-top: 10px;
}

.Profile-module__list-item-wrapper___vApxb {
    margin: 0 -16px;
    padding: 0 16px;
    transition: background-color 0.3s;
    display: block;
    cursor: pointer;
    text-decoration: none;

    &.Profile-module__no-border___fsAgV {
        .Profile-module__list-item___bnKYb {
            border-color: transparent;
        }
    }

    &:hover {
        background-color: var(--select-bg-hover);

        .Profile-module__list-item___bnKYb {
            border-color: transparent;
        }

        .Profile-module__arrow-icon___lTNMS {
            color: var(--text-primary);
        }
    }
}

.Profile-module__list-item___bnKYb {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--text-primary);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 137.5% */
    letter-spacing: -0.43px;
    cursor: pointer;
    text-decoration: none;
    border-bottom: 0.33px solid var(--list-item-border-color);
    transition: border-color 0.3s;
    &:hover {
      .Profile-module__arrow-icon___lTNMS {
        color: var(--text-primary);
        transform: translateX(10px);
      }
    }

    svg {
        width: 30px;
        height: auto;
        color: var(--text-primary);
        flex-shrink: 0;
    }

    .Profile-module__arrow-icon___lTNMS {
        color: var(--arrow-color);
        transition: color 0.3s, transform 0.3s;
    }
}

.Profile-module__list-item-content___dsZeB {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 64px;
    width: 100%;
}

.Profile-module__list-item-content-title___li9Yt {
    flex-grow: 1;
}

.Profile-module__go-to-help-center___LWhH8 {
    color: var(--get-help-list-item-color);
    font-size: 14px;
    font-weight: 400;
    line-height: 22px; /* 157.143% */
    letter-spacing: -0.43px;
}

.Profile-module__log-out-btn___bOGDe {
    width: 100%;
    height: 50px;
    padding: 10px 20px;
    border-radius: 8px;
    border: 1px solid var(--logout-button-border-color);
    color: var(--get-help-list-item-color);
    font-family: inherit;
    font-size: 17px;
    font-weight: 400;
    line-height: 22px; /* 129.412% */
    letter-spacing: -0.43px;
    margin-top: 20px;
    background: var(--logout-button-bg-color);
    cursor: pointer;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;

    &:hover {
        background-color: var(--logout-button-bg-color-hover);
        border-color: var(--logout-button-border-color-hover);
        color: #fff;
    }

  &.Profile-module__item-disable___e7xRr {
    cursor: initial;
    opacity: 0.5;

    &:hover {
      background: var(--logout-button-bg-color);
      color: var(--get-help-list-item-color);
    }
  }
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/Profile/Profile.module.css"],"names":[],"mappings":"AAAA;IACI,uDAAuD;IACvD,+CAA+C;AACnD;;AAEA;IACI,wDAAwD;IACxD,+CAA+C;AACnD;;AAEA;IACI,kBAAkB;AACtB;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,YAAY;IAC/B,uBAAuB;IACvB,0BAA0B;AAC9B;;AAEA;IACI,aAAa;IACb,sBAAsB;IACtB,SAAS;IACT,gBAAgB;;IAEhB;QACI,YAAY;QACZ,kBAAkB;QAClB,kBAAkB;QAClB,oBAAoB;QACpB,WAAW;QACX,kBAAkB;QAClB,eAAe;QACf,gBAAgB;QAChB,iBAAiB,EAAE,SAAS;QAC5B,oBAAoB;QACpB,eAAe;QACf,aAAa;QACb,iCAAiC;;QAEjC;YACI,yBAAyB;QAC7B;IACJ;AACJ;;AAEA;IACI,WAAW;IACX,kBAAkB;IAClB,kBAAkB;IAClB,4BAA4B;AAChC;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,QAAQ;IACR,0BAA0B;IAC1B,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,SAAS;IAC5B,uBAAuB;;IAEvB;QACI,WAAW;QACX,YAAY;IAChB;AACJ;;AAEA;IACI,0BAA0B;IAC1B,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,SAAS;IAC5B,qBAAqB;AACzB;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,eAAe;IACf,eAAe;IACf,iCAAiC;IACjC,cAAc;IACd,eAAe;IACf,qBAAqB;;IAErB;QACI;YACI,yBAAyB;QAC7B;IACJ;;IAEA;QACI,wCAAwC;;QAExC;YACI,yBAAyB;QAC7B;;QAEA;YACI,0BAA0B;QAC9B;IACJ;AACJ;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,SAAS;IACT,0BAA0B;IAC1B,eAAe;IACf,kBAAkB;IAClB,gBAAgB;IAChB,iBAAiB,EAAE,WAAW;IAC9B,uBAAuB;IACvB,eAAe;IACf,qBAAqB;IACrB,yDAAyD;IACzD,6BAA6B;IAC7B;MACE;QACE,0BAA0B;QAC1B,2BAA2B;MAC7B;IACF;;IAEA;QACI,WAAW;QACX,YAAY;QACZ,0BAA0B;QAC1B,cAAc;IAClB;;IAEA;QACI,yBAAyB;QACzB,sCAAsC;IAC1C;AACJ;;AAEA;IACI,aAAa;IACb,8BAA8B;IAC9B,mBAAmB;IACnB,YAAY;IACZ,WAAW;AACf;;AAEA;IACI,YAAY;AAChB;;AAEA;IACI,sCAAsC;IACtC,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,aAAa;IAChC,uBAAuB;AAC3B;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,kBAAkB;IAClB,mDAAmD;IACnD,sCAAsC;IACtC,oBAAoB;IACpB,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,aAAa;IAChC,uBAAuB;IACvB,gBAAgB;IAChB,yCAAyC;IACzC,eAAe;IACf,gEAAgE;;IAEhE;QACI,qDAAqD;QACrD,qDAAqD;QACrD,WAAW;IACf;;EAEF;IACE,eAAe;IACf,YAAY;;IAEZ;MACE,yCAAyC;MACzC,sCAAsC;IACxC;EACF;AACF","sourcesContent":[":root {\n    --logout-button-bg-color-hover:  rgba(60, 60, 67, 0.30);\n    --logout-button-border-color-hover: transparent;\n}\n\n:global(.dark ){\n    --logout-button-bg-color-hover: rgba(229, 229, 255, 0.3);\n    --logout-button-border-color-hover: transparent;\n}\n\n.wrapper {\n    padding: 20px 16px;\n}\n\n.title {\n    font-size: 24px;\n    font-weight: 600;\n    line-height: 22px; /* 91.667% */\n    letter-spacing: -0.43px;\n    color: var(--text-primary);\n}\n\n.profile-info-wrapper {\n    display: flex;\n    flex-direction: column;\n    gap: 10px;\n    margin-top: 20px;\n\n    button {\n        height: 46px;\n        padding: 10px 16px;\n        border-radius: 8px;\n        background:  #3E9FF8;\n        color: #FFF;\n        text-align: center;\n        font-size: 16px;\n        font-weight: 500;\n        line-height: 20px; /* 125% */\n        font-family: inherit;\n        cursor: pointer;\n        border: unset;\n        transition: background-color 0.3s;\n\n        &:hover {\n            background-color: #58AFFF;\n        }\n    }\n}\n\n.profile-info-item {\n    width: 100%;\n    padding: 11px 16px;\n    border-radius: 5px;\n    background: var(--header-bg);\n}\n\n.profile-info-item-label {\n    display: flex;\n    align-items: center;\n    gap: 5px;\n    color: var(--text-primary);\n    font-size: 12px;\n    font-weight: 400;\n    line-height: 18px; /* 150% */\n    letter-spacing: -0.08px;\n\n    svg {\n        width: 12px;\n        height: auto;\n    }\n}\n\n.profile-info-item-value {\n    color: var(--text-primary);\n    font-size: 18px;\n    font-weight: 600;\n    line-height: 200%; /* 36px */\n    letter-spacing: 0.4px;\n}\n\n.list {\n    margin-top: 10px;\n}\n\n.list-item-wrapper {\n    margin: 0 -16px;\n    padding: 0 16px;\n    transition: background-color 0.3s;\n    display: block;\n    cursor: pointer;\n    text-decoration: none;\n\n    &.no-border {\n        .list-item {\n            border-color: transparent;\n        }\n    }\n\n    &:hover {\n        background-color: var(--select-bg-hover);\n\n        .list-item {\n            border-color: transparent;\n        }\n\n        .arrow-icon {\n            color: var(--text-primary);\n        }\n    }\n}\n\n.list-item {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    color: var(--text-primary);\n    font-size: 16px;\n    font-style: normal;\n    font-weight: 400;\n    line-height: 22px; /* 137.5% */\n    letter-spacing: -0.43px;\n    cursor: pointer;\n    text-decoration: none;\n    border-bottom: 0.33px solid var(--list-item-border-color);\n    transition: border-color 0.3s;\n    &:hover {\n      .arrow-icon {\n        color: var(--text-primary);\n        transform: translateX(10px);\n      }\n    }\n\n    svg {\n        width: 30px;\n        height: auto;\n        color: var(--text-primary);\n        flex-shrink: 0;\n    }\n\n    .arrow-icon {\n        color: var(--arrow-color);\n        transition: color 0.3s, transform 0.3s;\n    }\n}\n\n.list-item-content {\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    height: 64px;\n    width: 100%;\n}\n\n.list-item-content-title {\n    flex-grow: 1;\n}\n\n.go-to-help-center {\n    color: var(--get-help-list-item-color);\n    font-size: 14px;\n    font-weight: 400;\n    line-height: 22px; /* 157.143% */\n    letter-spacing: -0.43px;\n}\n\n.log-out-btn {\n    width: 100%;\n    height: 50px;\n    padding: 10px 20px;\n    border-radius: 8px;\n    border: 1px solid var(--logout-button-border-color);\n    color: var(--get-help-list-item-color);\n    font-family: inherit;\n    font-size: 17px;\n    font-weight: 400;\n    line-height: 22px; /* 129.412% */\n    letter-spacing: -0.43px;\n    margin-top: 20px;\n    background: var(--logout-button-bg-color);\n    cursor: pointer;\n    transition: background-color 0.3s, color 0.3s, border-color 0.3s;\n\n    &:hover {\n        background-color: var(--logout-button-bg-color-hover);\n        border-color: var(--logout-button-border-color-hover);\n        color: #fff;\n    }\n\n  &.item-disable {\n    cursor: initial;\n    opacity: 0.5;\n\n    &:hover {\n      background: var(--logout-button-bg-color);\n      color: var(--get-help-list-item-color);\n    }\n  }\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `Profile-module__wrapper___JiZb1`,
	"title": `Profile-module__title___EvCX5`,
	"profile-info-wrapper": `Profile-module__profile-info-wrapper___xukBN`,
	"profileInfoWrapper": `Profile-module__profile-info-wrapper___xukBN`,
	"profile-info-item": `Profile-module__profile-info-item___Wv5u6`,
	"profileInfoItem": `Profile-module__profile-info-item___Wv5u6`,
	"profile-info-item-label": `Profile-module__profile-info-item-label___DEBNb`,
	"profileInfoItemLabel": `Profile-module__profile-info-item-label___DEBNb`,
	"profile-info-item-value": `Profile-module__profile-info-item-value___OL9rg`,
	"profileInfoItemValue": `Profile-module__profile-info-item-value___OL9rg`,
	"list": `Profile-module__list___Ij75U`,
	"list-item-wrapper": `Profile-module__list-item-wrapper___vApxb`,
	"listItemWrapper": `Profile-module__list-item-wrapper___vApxb`,
	"no-border": `Profile-module__no-border___fsAgV`,
	"noBorder": `Profile-module__no-border___fsAgV`,
	"list-item": `Profile-module__list-item___bnKYb`,
	"listItem": `Profile-module__list-item___bnKYb`,
	"arrow-icon": `Profile-module__arrow-icon___lTNMS`,
	"arrowIcon": `Profile-module__arrow-icon___lTNMS`,
	"list-item-content": `Profile-module__list-item-content___dsZeB`,
	"listItemContent": `Profile-module__list-item-content___dsZeB`,
	"list-item-content-title": `Profile-module__list-item-content-title___li9Yt`,
	"listItemContentTitle": `Profile-module__list-item-content-title___li9Yt`,
	"go-to-help-center": `Profile-module__go-to-help-center___LWhH8`,
	"goToHelpCenter": `Profile-module__go-to-help-center___LWhH8`,
	"log-out-btn": `Profile-module__log-out-btn___bOGDe`,
	"logOutBtn": `Profile-module__log-out-btn___bOGDe`,
	"item-disable": `Profile-module__item-disable___e7xRr`,
	"itemDisable": `Profile-module__item-disable___e7xRr`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ReferralHub/ReferralHub.module.css":
/*!***********************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ReferralHub/ReferralHub.module.css ***!
  \***********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --referral-hub-title: #000000;
    --referral-hub-text: #000;
    --referral-hub-section-background: #F7F7F9;
    --referral-hub-section-code-background: #FFFFFF;
}

.dark{
    --referral-hub-title: #FFFFFF;
    --referral-hub-text: #FFFFFF99;
    --referral-hub-section-background: #292929;
    --referral-hub-section-code-background: #000000;
}

.ReferralHub-module__container___CSW0j {
    padding: 20px 16px;
}

.ReferralHub-module__header___L0Z6l {
    display: flex;
    align-items: center;
    cursor: pointer;
    margin-bottom: 20px;
}

.ReferralHub-module__back-button____Byig {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 0;
    margin-right: 8px;
    color: var(--referral-hub-title);
    height: fit-content;

    svg {
        display: block;
    }
}

.ReferralHub-module__header-title___JL9ER {
    font-size: 24px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -0.43px;
    color: var(--referral-hub-title);
}

.ReferralHub-module__section___rVrEM {
    padding: 16px;
    border-radius: 12px;
    background-color: var(--referral-hub-section-background);
    margin-bottom: 16px;
}

.ReferralHub-module__section-title___FBABq {
    display: flex;
    gap: 10px;
    color: var(--referral-hub-title);
    font-size: 16px;
    font-weight: 500;
    line-height: 130%;
    margin-bottom: 5px;
}

.ReferralHub-module__section-code___nJVso {
    border-radius: 12px;
    color: var(--referral-hub-title);
    background-color: var(--referral-hub-section-code-background);
    text-align: center;
    padding: 11px 16px;
    margin-bottom: 10px;
    position: relative;
    white-space: nowrap;
    text-overflow: ellipsis;
    text-align: center;
    overflow: hidden;
    max-width: 100%;
    line-height: 22px;
    font-size: 16px;
    font-weight: 400;
}

.ReferralHub-module__section-button____4cgs {
    background-color: #3E9FF8;
    border-radius: 12px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    color: #FFFFFF;
    margin-bottom: 10px;
    border: none;
    height: 46px;
    width: 100%;
    cursor: pointer;
    text-decoration: auto;
    font-family: inherit;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    transition: background-color 0.3s;

    &:hover {
        background-color: #58AFFF;
    }
}

.ReferralHub-module__section-text___XgxZE {
    color: var(--referral-hub-text);
    font-size: 14px;
    font-weight: 400;
    line-height: 150%;

    &.ReferralHub-module__small___ACDuy {
        font-size: 12px;
        line-height: 130%;
        letter-spacing: -0.08px;
    }
}

.ReferralHub-module__learn-more___tI7ab {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--referral-hub-title);
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    cursor: pointer;

    &:hover {
        .ReferralHub-module__learn-more-icon___dGAmW {
            color: #3E9FF8;
        }
    }
}

.ReferralHub-module__learn-more-icon___dGAmW {
    cursor: pointer;
    height: 26px;
    transition: color 0.3s;
    color: var(--arrow-color);
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/ReferralHub/ReferralHub.module.css"],"names":[],"mappings":"AAAA;IACI,6BAA6B;IAC7B,yBAAyB;IACzB,0CAA0C;IAC1C,+CAA+C;AACnD;;AAEA;IACI,6BAA6B;IAC7B,8BAA8B;IAC9B,0CAA0C;IAC1C,+CAA+C;AACnD;;AAEA;IACI,kBAAkB;AACtB;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,eAAe;IACf,mBAAmB;AACvB;;AAEA;IACI,uBAAuB;IACvB,YAAY;IACZ,eAAe;IACf,UAAU;IACV,iBAAiB;IACjB,gCAAgC;IAChC,mBAAmB;;IAEnB;QACI,cAAc;IAClB;AACJ;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;IACvB,gCAAgC;AACpC;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,wDAAwD;IACxD,mBAAmB;AACvB;;AAEA;IACI,aAAa;IACb,SAAS;IACT,gCAAgC;IAChC,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;AACtB;;AAEA;IACI,mBAAmB;IACnB,gCAAgC;IAChC,6DAA6D;IAC7D,kBAAkB;IAClB,kBAAkB;IAClB,mBAAmB;IACnB,kBAAkB;IAClB,mBAAmB;IACnB,uBAAuB;IACvB,kBAAkB;IAClB,gBAAgB;IAChB,eAAe;IACf,iBAAiB;IACjB,eAAe;IACf,gBAAgB;AACpB;;AAEA;IACI,yBAAyB;IACzB,mBAAmB;IACnB,aAAa;IACb,uBAAuB;IACvB,mBAAmB;IACnB,QAAQ;IACR,cAAc;IACd,mBAAmB;IACnB,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,eAAe;IACf,qBAAqB;IACrB,oBAAoB;IACpB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,iCAAiC;;IAEjC;QACI,yBAAyB;IAC7B;AACJ;;AAEA;IACI,+BAA+B;IAC/B,eAAe;IACf,gBAAgB;IAChB,iBAAiB;;IAEjB;QACI,eAAe;QACf,iBAAiB;QACjB,uBAAuB;IAC3B;AACJ;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,8BAA8B;IAC9B,gCAAgC;IAChC,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,eAAe;;IAEf;QACI;YACI,cAAc;QAClB;IACJ;AACJ;;AAEA;IACI,eAAe;IACf,YAAY;IACZ,sBAAsB;IACtB,yBAAyB;AAC7B","sourcesContent":[":root {\n    --referral-hub-title: #000000;\n    --referral-hub-text: #000;\n    --referral-hub-section-background: #F7F7F9;\n    --referral-hub-section-code-background: #FFFFFF;\n}\n\n:global(.dark ){\n    --referral-hub-title: #FFFFFF;\n    --referral-hub-text: #FFFFFF99;\n    --referral-hub-section-background: #292929;\n    --referral-hub-section-code-background: #000000;\n}\n\n.container {\n    padding: 20px 16px;\n}\n\n.header {\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n    margin-bottom: 20px;\n}\n\n.back-button {\n    background: transparent;\n    border: none;\n    cursor: pointer;\n    padding: 0;\n    margin-right: 8px;\n    color: var(--referral-hub-title);\n    height: fit-content;\n\n    svg {\n        display: block;\n    }\n}\n\n.header-title {\n    font-size: 24px;\n    font-weight: 600;\n    line-height: 22px;\n    letter-spacing: -0.43px;\n    color: var(--referral-hub-title);\n}\n\n.section {\n    padding: 16px;\n    border-radius: 12px;\n    background-color: var(--referral-hub-section-background);\n    margin-bottom: 16px;\n}\n\n.section-title {\n    display: flex;\n    gap: 10px;\n    color: var(--referral-hub-title);\n    font-size: 16px;\n    font-weight: 500;\n    line-height: 130%;\n    margin-bottom: 5px;\n}\n\n.section-code {\n    border-radius: 12px;\n    color: var(--referral-hub-title);\n    background-color: var(--referral-hub-section-code-background);\n    text-align: center;\n    padding: 11px 16px;\n    margin-bottom: 10px;\n    position: relative;\n    white-space: nowrap;\n    text-overflow: ellipsis;\n    text-align: center;\n    overflow: hidden;\n    max-width: 100%;\n    line-height: 22px;\n    font-size: 16px;\n    font-weight: 400;\n}\n\n.section-button {\n    background-color: #3E9FF8;\n    border-radius: 12px;\n    display: flex;\n    justify-content: center;\n    align-items: center;\n    gap: 8px;\n    color: #FFFFFF;\n    margin-bottom: 10px;\n    border: none;\n    height: 46px;\n    width: 100%;\n    cursor: pointer;\n    text-decoration: auto;\n    font-family: inherit;\n    font-size: 16px;\n    font-weight: 500;\n    line-height: 20px;\n    transition: background-color 0.3s;\n\n    &:hover {\n        background-color: #58AFFF;\n    }\n}\n\n.section-text {\n    color: var(--referral-hub-text);\n    font-size: 14px;\n    font-weight: 400;\n    line-height: 150%;\n\n    &.small {\n        font-size: 12px;\n        line-height: 130%;\n        letter-spacing: -0.08px;\n    }\n}\n\n.learn-more {\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    color: var(--referral-hub-title);\n    font-size: 16px;\n    font-weight: 400;\n    line-height: 24px;\n    cursor: pointer;\n\n    &:hover {\n        .learn-more-icon {\n            color: #3E9FF8;\n        }\n    }\n}\n\n.learn-more-icon {\n    cursor: pointer;\n    height: 26px;\n    transition: color 0.3s;\n    color: var(--arrow-color);\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"container": `ReferralHub-module__container___CSW0j`,
	"header": `ReferralHub-module__header___L0Z6l`,
	"back-button": `ReferralHub-module__back-button____Byig`,
	"backButton": `ReferralHub-module__back-button____Byig`,
	"header-title": `ReferralHub-module__header-title___JL9ER`,
	"headerTitle": `ReferralHub-module__header-title___JL9ER`,
	"section": `ReferralHub-module__section___rVrEM`,
	"section-title": `ReferralHub-module__section-title___FBABq`,
	"sectionTitle": `ReferralHub-module__section-title___FBABq`,
	"section-code": `ReferralHub-module__section-code___nJVso`,
	"sectionCode": `ReferralHub-module__section-code___nJVso`,
	"section-button": `ReferralHub-module__section-button____4cgs`,
	"sectionButton": `ReferralHub-module__section-button____4cgs`,
	"section-text": `ReferralHub-module__section-text___XgxZE`,
	"sectionText": `ReferralHub-module__section-text___XgxZE`,
	"small": `ReferralHub-module__small___ACDuy`,
	"learn-more": `ReferralHub-module__learn-more___tI7ab`,
	"learnMore": `ReferralHub-module__learn-more___tI7ab`,
	"learn-more-icon": `ReferralHub-module__learn-more-icon___dGAmW`,
	"learnMoreIcon": `ReferralHub-module__learn-more-icon___dGAmW`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ReportViewScreen/report_view_screen.module.css":
/*!***********************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ReportViewScreen/report_view_screen.module.css ***!
  \***********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.report_view_screen-module__container___afFDu {
    padding: 0 16px 20px;

    .report_view_screen-module__header___pOBf0 {
        padding-top: 16px;
        display: flex;
        column-gap: 12px;
        align-items: center;
        cursor: pointer;

        span {
            font-size: 24px;
            font-weight: 600;
            line-height: 22px;
            letter-spacing: -0.43px;
            color: var(--title-color);
        }
        svg{
            path{
                fill: var(--title-color);
            }
        }

        margin-bottom: 20px;
    }

    .report_view_screen-module__formReport___MKGWR {
        width: 100%;
        display: flex;
        flex-direction: column;

        .report_view_screen-module__selectType___SxIhI {
            position: relative;
            margin-bottom: 20px;

            .report_view_screen-module__select___pTdOi {
                padding: 15px 16px;
                display: flex;
                align-items: center;
                justify-content: space-between;
                border: 1px solid var(--border-select);
                border-radius: 8px;
                color: var(--text-value-select);
                font-size: 16px;
                font-weight: 400;
                cursor: pointer;
                transition: border-color 0.3s;

                svg {
                    transition: all 0.3s;
                }

                &:hover {
                    border-color: rgba(62, 159, 248, 1) !important;
                }
            }

            .report_view_screen-module__has-error___E5azW{
                border-color: rgba(255, 59, 48, 1) !important
            }
            .report_view_screen-module__error-text___XvNDk {
                font-size:12px;
                font-style: normal;
                font-weight: 400;
                color: rgba(255, 59, 48, 1);
                padding-left: 16px;
            }

            .report_view_screen-module__open___JcDoh {
                border-color: rgba(62, 159, 248, 1)!important;
                border-radius: 8px 8px 0 0;
                color: var(--text-value-selected);
                svg {
                    transform: rotate(180deg);
                }
            }

            .report_view_screen-module__options___e7BXZ {
                background-color: var(--background);
                border: 1px solid rgba(62, 159, 248, 1);
                border-top: none;
                border-radius: 0 0 8px 8px;
                position: absolute;
                z-index: 10;
                left: 0;
                right: 0;
                top: 55px;
                overflow: hidden;

                .report_view_screen-module__item___NJMkn {
                    height: 48px;
                    display: flex;
                    align-items: center;
                    padding: 0 16px;
                    color: var(--text-value-selected);
                    font-size: 16px;
                    font-weight: 400;
                    cursor: pointer;
                    transition: border-color 0.3s;
                }
                .report_view_screen-module__item___NJMkn:hover {
                    background-color: var(--select-bg-hover);
                }
                .report_view_screen-module__selectItem___XTMcr{
                    color:rgba(62, 159, 248, 1);
                }

            }

        }
        .report_view_screen-module__radioContainer___pBLTS{
            display: flex;
            flex-direction: column;
            margin: 20px 0 10px;

            p{
              font-size: 16px;
              font-weight: 400;
              color: var(--title-color);
              margin-bottom: 8px;
            }

            label{
                display: flex;
                column-gap: 8px;
                align-items: center;
                height: 40px;
                font-size: 16px;
                font-weight: 400;
                color: var(--title-color);
            }
            input{
                width: 20px;
                height: 20px;
            }
        }
    }
}

.report_view_screen-module__btnSubmit___VsFVu{
    display: flex;
    width: 100%;
    height: 46px;
    align-items: center;
    justify-content: center;
    padding: 0 16px;
    border-radius: 8px;
    background-color: #3E9FF8;
    border: none;
    outline: none;
    cursor: pointer;
    color: white;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    font-family: inherit;
    transition: background-color 0.3s;
    margin-top: 20px;

    &:hover {
        background-color: #58AFFF;
    }

    &:disabled {
        opacity: 0.5;
        cursor: not-allowed;
        pointer-events: none;
    }

    .report_view_screen-module__loader___O366i {
        width: 15px;
        height: 15px;
        border: 2px solid #e0e0e0;
        border-top: 2px solid transparent;
        border-radius: 50%;
        animation: report_view_screen-module__spin___UTco0 1s linear infinite;
    }
}

@keyframes report_view_screen-module__spin___UTco0 {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}


.report_view_screen-module__radioContainer___pBLTS input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 20px;
    height: 20px;
    background-color: var(--background);
    border: 2px solid rgba(62, 159, 248, 1);
    border-radius: 50%;
    position: relative;
    cursor: pointer;
}

.report_view_screen-module__radioContainer___pBLTS input[type="radio"]:checked::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 10px;
    background-color: rgba(62, 159, 248, 1);
    border-radius: 50%;
    transform: translate(-50%, -50%);
}

.report_view_screen-module__report-problem-feedback-wrapper___TVY87 {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 30px;
}

.report_view_screen-module__report-problem-feedback-title___WvAo8 {
    font-size: 24px;
    font-weight: 600;
    line-height: normal;
    color: var(--title-color);
    text-align: center;
    margin-top: 43px;
}

.report_view_screen-module__report-problem-feedback-text___NUk5p {
    font-size: 16px;
    font-weight: 400;
    line-height: 150%;
    text-align: center;
    color: var(--title-color);
    margin-top: 10px;
}

.report_view_screen-module__report-problem-feedback-btn___ysdoR {
    margin-top: 30px;
}

.report_view_screen-module__inputs-wrapper___y72mv {
    display: flex;
    flex-direction: column;
    gap: 20px;
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/ReportViewScreen/report_view_screen.module.css"],"names":[],"mappings":"AAAA;IACI,oBAAoB;;IAEpB;QACI,iBAAiB;QACjB,aAAa;QACb,gBAAgB;QAChB,mBAAmB;QACnB,eAAe;;QAEf;YACI,eAAe;YACf,gBAAgB;YAChB,iBAAiB;YACjB,uBAAuB;YACvB,yBAAyB;QAC7B;QACA;YACI;gBACI,wBAAwB;YAC5B;QACJ;;QAEA,mBAAmB;IACvB;;IAEA;QACI,WAAW;QACX,aAAa;QACb,sBAAsB;;QAEtB;YACI,kBAAkB;YAClB,mBAAmB;;YAEnB;gBACI,kBAAkB;gBAClB,aAAa;gBACb,mBAAmB;gBACnB,8BAA8B;gBAC9B,sCAAsC;gBACtC,kBAAkB;gBAClB,+BAA+B;gBAC/B,eAAe;gBACf,gBAAgB;gBAChB,eAAe;gBACf,6BAA6B;;gBAE7B;oBACI,oBAAoB;gBACxB;;gBAEA;oBACI,8CAA8C;gBAClD;YACJ;;YAEA;gBACI;YACJ;YACA;gBACI,cAAc;gBACd,kBAAkB;gBAClB,gBAAgB;gBAChB,2BAA2B;gBAC3B,kBAAkB;YACtB;;YAEA;gBACI,6CAA6C;gBAC7C,0BAA0B;gBAC1B,iCAAiC;gBACjC;oBACI,yBAAyB;gBAC7B;YACJ;;YAEA;gBACI,mCAAmC;gBACnC,uCAAuC;gBACvC,gBAAgB;gBAChB,0BAA0B;gBAC1B,kBAAkB;gBAClB,WAAW;gBACX,OAAO;gBACP,QAAQ;gBACR,SAAS;gBACT,gBAAgB;;gBAEhB;oBACI,YAAY;oBACZ,aAAa;oBACb,mBAAmB;oBACnB,eAAe;oBACf,iCAAiC;oBACjC,eAAe;oBACf,gBAAgB;oBAChB,eAAe;oBACf,6BAA6B;gBACjC;gBACA;oBACI,wCAAwC;gBAC5C;gBACA;oBACI,2BAA2B;gBAC/B;;YAEJ;;QAEJ;QACA;YACI,aAAa;YACb,sBAAsB;YACtB,mBAAmB;;YAEnB;cACE,eAAe;cACf,gBAAgB;cAChB,yBAAyB;cACzB,kBAAkB;YACpB;;YAEA;gBACI,aAAa;gBACb,eAAe;gBACf,mBAAmB;gBACnB,YAAY;gBACZ,eAAe;gBACf,gBAAgB;gBAChB,yBAAyB;YAC7B;YACA;gBACI,WAAW;gBACX,YAAY;YAChB;QACJ;IACJ;AACJ;;AAEA;IACI,aAAa;IACb,WAAW;IACX,YAAY;IACZ,mBAAmB;IACnB,uBAAuB;IACvB,eAAe;IACf,kBAAkB;IAClB,yBAAyB;IACzB,YAAY;IACZ,aAAa;IACb,eAAe;IACf,YAAY;IACZ,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,oBAAoB;IACpB,iCAAiC;IACjC,gBAAgB;;IAEhB;QACI,yBAAyB;IAC7B;;IAEA;QACI,YAAY;QACZ,mBAAmB;QACnB,oBAAoB;IACxB;;IAEA;QACI,WAAW;QACX,YAAY;QACZ,yBAAyB;QACzB,iCAAiC;QACjC,kBAAkB;QAClB,qEAAkC;IACtC;AACJ;;AAEA;IACI,KAAK,uBAAuB,EAAE;IAC9B,OAAO,yBAAyB,EAAE;AACtC;;;AAGA;IACI,gBAAgB;IAChB,wBAAwB;IACxB,WAAW;IACX,YAAY;IACZ,mCAAmC;IACnC,uCAAuC;IACvC,kBAAkB;IAClB,kBAAkB;IAClB,eAAe;AACnB;;AAEA;IACI,WAAW;IACX,kBAAkB;IAClB,QAAQ;IACR,SAAS;IACT,WAAW;IACX,YAAY;IACZ,uCAAuC;IACvC,kBAAkB;IAClB,gCAAgC;AACpC;;AAEA;IACI,aAAa;IACb,sBAAsB;IACtB,mBAAmB;IACnB,gBAAgB;AACpB;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,mBAAmB;IACnB,yBAAyB;IACzB,kBAAkB;IAClB,gBAAgB;AACpB;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,kBAAkB;IAClB,yBAAyB;IACzB,gBAAgB;AACpB;;AAEA;IACI,gBAAgB;AACpB;;AAEA;IACI,aAAa;IACb,sBAAsB;IACtB,SAAS;AACb","sourcesContent":[".container {\n    padding: 0 16px 20px;\n\n    .header {\n        padding-top: 16px;\n        display: flex;\n        column-gap: 12px;\n        align-items: center;\n        cursor: pointer;\n\n        span {\n            font-size: 24px;\n            font-weight: 600;\n            line-height: 22px;\n            letter-spacing: -0.43px;\n            color: var(--title-color);\n        }\n        svg{\n            path{\n                fill: var(--title-color);\n            }\n        }\n\n        margin-bottom: 20px;\n    }\n\n    .formReport {\n        width: 100%;\n        display: flex;\n        flex-direction: column;\n\n        .selectType {\n            position: relative;\n            margin-bottom: 20px;\n\n            .select {\n                padding: 15px 16px;\n                display: flex;\n                align-items: center;\n                justify-content: space-between;\n                border: 1px solid var(--border-select);\n                border-radius: 8px;\n                color: var(--text-value-select);\n                font-size: 16px;\n                font-weight: 400;\n                cursor: pointer;\n                transition: border-color 0.3s;\n\n                svg {\n                    transition: all 0.3s;\n                }\n\n                &:hover {\n                    border-color: rgba(62, 159, 248, 1) !important;\n                }\n            }\n\n            .has-error{\n                border-color: rgba(255, 59, 48, 1) !important\n            }\n            .error-text {\n                font-size:12px;\n                font-style: normal;\n                font-weight: 400;\n                color: rgba(255, 59, 48, 1);\n                padding-left: 16px;\n            }\n\n            .open {\n                border-color: rgba(62, 159, 248, 1)!important;\n                border-radius: 8px 8px 0 0;\n                color: var(--text-value-selected);\n                svg {\n                    transform: rotate(180deg);\n                }\n            }\n\n            .options {\n                background-color: var(--background);\n                border: 1px solid rgba(62, 159, 248, 1);\n                border-top: none;\n                border-radius: 0 0 8px 8px;\n                position: absolute;\n                z-index: 10;\n                left: 0;\n                right: 0;\n                top: 55px;\n                overflow: hidden;\n\n                .item {\n                    height: 48px;\n                    display: flex;\n                    align-items: center;\n                    padding: 0 16px;\n                    color: var(--text-value-selected);\n                    font-size: 16px;\n                    font-weight: 400;\n                    cursor: pointer;\n                    transition: border-color 0.3s;\n                }\n                .item:hover {\n                    background-color: var(--select-bg-hover);\n                }\n                .selectItem{\n                    color:rgba(62, 159, 248, 1);\n                }\n\n            }\n\n        }\n        .radioContainer{\n            display: flex;\n            flex-direction: column;\n            margin: 20px 0 10px;\n\n            p{\n              font-size: 16px;\n              font-weight: 400;\n              color: var(--title-color);\n              margin-bottom: 8px;\n            }\n\n            label{\n                display: flex;\n                column-gap: 8px;\n                align-items: center;\n                height: 40px;\n                font-size: 16px;\n                font-weight: 400;\n                color: var(--title-color);\n            }\n            input{\n                width: 20px;\n                height: 20px;\n            }\n        }\n    }\n}\n\n.btnSubmit{\n    display: flex;\n    width: 100%;\n    height: 46px;\n    align-items: center;\n    justify-content: center;\n    padding: 0 16px;\n    border-radius: 8px;\n    background-color: #3E9FF8;\n    border: none;\n    outline: none;\n    cursor: pointer;\n    color: white;\n    font-size: 16px;\n    font-weight: 500;\n    line-height: 20px;\n    font-family: inherit;\n    transition: background-color 0.3s;\n    margin-top: 20px;\n\n    &:hover {\n        background-color: #58AFFF;\n    }\n\n    &:disabled {\n        opacity: 0.5;\n        cursor: not-allowed;\n        pointer-events: none;\n    }\n\n    .loader {\n        width: 15px;\n        height: 15px;\n        border: 2px solid #e0e0e0;\n        border-top: 2px solid transparent;\n        border-radius: 50%;\n        animation: spin 1s linear infinite;\n    }\n}\n\n@keyframes spin {\n    0% { transform: rotate(0deg); }\n    100% { transform: rotate(360deg); }\n}\n\n\n.radioContainer input[type=\"radio\"] {\n    appearance: none;\n    -webkit-appearance: none;\n    width: 20px;\n    height: 20px;\n    background-color: var(--background);\n    border: 2px solid rgba(62, 159, 248, 1);\n    border-radius: 50%;\n    position: relative;\n    cursor: pointer;\n}\n\n.radioContainer input[type=\"radio\"]:checked::after {\n    content: '';\n    position: absolute;\n    top: 50%;\n    left: 50%;\n    width: 10px;\n    height: 10px;\n    background-color: rgba(62, 159, 248, 1);\n    border-radius: 50%;\n    transform: translate(-50%, -50%);\n}\n\n.report-problem-feedback-wrapper {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    margin-top: 30px;\n}\n\n.report-problem-feedback-title {\n    font-size: 24px;\n    font-weight: 600;\n    line-height: normal;\n    color: var(--title-color);\n    text-align: center;\n    margin-top: 43px;\n}\n\n.report-problem-feedback-text {\n    font-size: 16px;\n    font-weight: 400;\n    line-height: 150%;\n    text-align: center;\n    color: var(--title-color);\n    margin-top: 10px;\n}\n\n.report-problem-feedback-btn {\n    margin-top: 30px;\n}\n\n.inputs-wrapper {\n    display: flex;\n    flex-direction: column;\n    gap: 20px;\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"container": `report_view_screen-module__container___afFDu`,
	"header": `report_view_screen-module__header___pOBf0`,
	"formReport": `report_view_screen-module__formReport___MKGWR`,
	"selectType": `report_view_screen-module__selectType___SxIhI`,
	"select": `report_view_screen-module__select___pTdOi`,
	"has-error": `report_view_screen-module__has-error___E5azW`,
	"hasError": `report_view_screen-module__has-error___E5azW`,
	"error-text": `report_view_screen-module__error-text___XvNDk`,
	"errorText": `report_view_screen-module__error-text___XvNDk`,
	"open": `report_view_screen-module__open___JcDoh`,
	"options": `report_view_screen-module__options___e7BXZ`,
	"item": `report_view_screen-module__item___NJMkn`,
	"selectItem": `report_view_screen-module__selectItem___XTMcr`,
	"radioContainer": `report_view_screen-module__radioContainer___pBLTS`,
	"btnSubmit": `report_view_screen-module__btnSubmit___VsFVu`,
	"spin": `report_view_screen-module__spin___UTco0`,
	"loader": `report_view_screen-module__loader___O366i`,
	"report-problem-feedback-wrapper": `report_view_screen-module__report-problem-feedback-wrapper___TVY87`,
	"reportProblemFeedbackWrapper": `report_view_screen-module__report-problem-feedback-wrapper___TVY87`,
	"report-problem-feedback-title": `report_view_screen-module__report-problem-feedback-title___WvAo8`,
	"reportProblemFeedbackTitle": `report_view_screen-module__report-problem-feedback-title___WvAo8`,
	"report-problem-feedback-text": `report_view_screen-module__report-problem-feedback-text___NUk5p`,
	"reportProblemFeedbackText": `report_view_screen-module__report-problem-feedback-text___NUk5p`,
	"report-problem-feedback-btn": `report_view_screen-module__report-problem-feedback-btn___ysdoR`,
	"reportProblemFeedbackBtn": `report_view_screen-module__report-problem-feedback-btn___ysdoR`,
	"inputs-wrapper": `report_view_screen-module__inputs-wrapper___y72mv`,
	"inputsWrapper": `report_view_screen-module__inputs-wrapper___y72mv`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/SettingsScreen/SettingsScreen.module.css":
/*!*****************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/SettingsScreen/SettingsScreen.module.css ***!
  \*****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --settings-screen-title: #000000;
}

.dark{
    --settings-screen-title: #FFFFFF;
}

.SettingsScreen-module__container___VWxKR {
    padding: 20px 16px;
}

.SettingsScreen-module__header___r58kW {
    margin-bottom: 5px;
    color: var(--settings-screen-title);
    font-weight: 600;
    font-size: 24px;
    line-height: 22px;
    letter-spacing: -0.43px;
}

.SettingsScreen-module__setting-item-wrapper___tqZKz {
    margin: 0 -16px;
    padding: 0 16px;
    transition: background-color 0.3s;
    display: block;
    cursor: pointer;
    text-decoration: none;

    &.SettingsScreen-module__no-border___seWad {
        .SettingsScreen-module__setting-item___XKWsq {
            border-color: transparent;
        }
    }

    &:hover {
        background-color: var(--select-bg-hover);

        .SettingsScreen-module__setting-item-icon___aOCHk {
            color: var(--text-primary);
        }

        .SettingsScreen-module__setting-item___XKWsq {
            border-color: transparent;
        }
    }
}

.SettingsScreen-module__setting-item___XKWsq {
    height: 64px;
    border-bottom: 0.33px solid var(--list-item-border-color);
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: border-color 0.3s;
  &:hover {
    .SettingsScreen-module__setting-item-icon___aOCHk {
      color: var(--text-primary);
      transform: translateX(10px);
    }
  }
}

.SettingsScreen-module__setting-item-icon-title___HbDwE {
    color: var(--text-primary);
    font-size: 16px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: -0.43px;
}

.SettingsScreen-module__setting-item-icon___aOCHk {
    color: var(--arrow-color);
    transition: color 0.3s, transform 0.3s;
    height: 30px;
}
`, "",{"version":3,"sources":["webpack://./src/components/pages/SettingsScreen/SettingsScreen.module.css"],"names":[],"mappings":"AAAA;IACI,gCAAgC;AACpC;;AAEA;IACI,gCAAgC;AACpC;;AAEA;IACI,kBAAkB;AACtB;;AAEA;IACI,kBAAkB;IAClB,mCAAmC;IACnC,gBAAgB;IAChB,eAAe;IACf,iBAAiB;IACjB,uBAAuB;AAC3B;;AAEA;IACI,eAAe;IACf,eAAe;IACf,iCAAiC;IACjC,cAAc;IACd,eAAe;IACf,qBAAqB;;IAErB;QACI;YACI,yBAAyB;QAC7B;IACJ;;IAEA;QACI,wCAAwC;;QAExC;YACI,0BAA0B;QAC9B;;QAEA;YACI,yBAAyB;QAC7B;IACJ;AACJ;;AAEA;IACI,YAAY;IACZ,yDAAyD;IACzD,uBAAuB;IACvB,aAAa;IACb,mBAAmB;IACnB,8BAA8B;IAC9B,eAAe;IACf,6BAA6B;EAC/B;IACE;MACE,0BAA0B;MAC1B,2BAA2B;IAC7B;EACF;AACF;;AAEA;IACI,0BAA0B;IAC1B,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,uBAAuB;AAC3B;;AAEA;IACI,yBAAyB;IACzB,sCAAsC;IACtC,YAAY;AAChB","sourcesContent":[":root {\n    --settings-screen-title: #000000;\n}\n\n:global(.dark ){\n    --settings-screen-title: #FFFFFF;\n}\n\n.container {\n    padding: 20px 16px;\n}\n\n.header {\n    margin-bottom: 5px;\n    color: var(--settings-screen-title);\n    font-weight: 600;\n    font-size: 24px;\n    line-height: 22px;\n    letter-spacing: -0.43px;\n}\n\n.setting-item-wrapper {\n    margin: 0 -16px;\n    padding: 0 16px;\n    transition: background-color 0.3s;\n    display: block;\n    cursor: pointer;\n    text-decoration: none;\n\n    &.no-border {\n        .setting-item {\n            border-color: transparent;\n        }\n    }\n\n    &:hover {\n        background-color: var(--select-bg-hover);\n\n        .setting-item-icon {\n            color: var(--text-primary);\n        }\n\n        .setting-item {\n            border-color: transparent;\n        }\n    }\n}\n\n.setting-item {\n    height: 64px;\n    border-bottom: 0.33px solid var(--list-item-border-color);\n    background: transparent;\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    cursor: pointer;\n    transition: border-color 0.3s;\n  &:hover {\n    .setting-item-icon {\n      color: var(--text-primary);\n      transform: translateX(10px);\n    }\n  }\n}\n\n.setting-item-icon-title {\n    color: var(--text-primary);\n    font-size: 16px;\n    font-weight: 400;\n    line-height: 22px;\n    letter-spacing: -0.43px;\n}\n\n.setting-item-icon {\n    color: var(--arrow-color);\n    transition: color 0.3s, transform 0.3s;\n    height: 30px;\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"container": `SettingsScreen-module__container___VWxKR`,
	"header": `SettingsScreen-module__header___r58kW`,
	"setting-item-wrapper": `SettingsScreen-module__setting-item-wrapper___tqZKz`,
	"settingItemWrapper": `SettingsScreen-module__setting-item-wrapper___tqZKz`,
	"no-border": `SettingsScreen-module__no-border___seWad`,
	"noBorder": `SettingsScreen-module__no-border___seWad`,
	"setting-item": `SettingsScreen-module__setting-item___XKWsq`,
	"settingItem": `SettingsScreen-module__setting-item___XKWsq`,
	"setting-item-icon": `SettingsScreen-module__setting-item-icon___aOCHk`,
	"settingItemIcon": `SettingsScreen-module__setting-item-icon___aOCHk`,
	"setting-item-icon-title": `SettingsScreen-module__setting-item-icon-title___HbDwE`,
	"settingItemIconTitle": `SettingsScreen-module__setting-item-icon-title___HbDwE`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Alert/Alert.module.css":
/*!***********************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Alert/Alert.module.css ***!
  \***********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.Alert-module__wrapper___nFr6R {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 15px;
    border-radius: 12px;
    border: 1px solid transparent;
    font-size: 13px;
    font-weight: 400;
    line-height: 150%; /* 19.5px */
    letter-spacing: -0.43px;

    &.Alert-module__error___QNSOB {
        border-color: rgba(255, 59, 48, 0.40);
        background-color: rgba(255, 59, 48, 0.15);
        color: #FF3B30;
    }

    &.Alert-module__warning___wC4Jw {
        border-color: rgba(255, 214, 0, 0.40);
        background-color: rgba(255, 214, 0, 0.15);
        color: #F90;
    }

    &.Alert-module__info___qW0eD {
        border-color: rgba(62, 159, 248, 0.40);
        background-color: rgba(62, 159, 248, 0.10);
        color: #3E9FF8;
    }

    svg {
        width: 24px;
        height: auto;
        flex-shrink: 0;
    }
}`, "",{"version":3,"sources":["webpack://./src/components/shared/components/Alert/Alert.module.css"],"names":[],"mappings":"AAAA;IACI,aAAa;IACb,mBAAmB;IACnB,SAAS;IACT,WAAW;IACX,aAAa;IACb,mBAAmB;IACnB,6BAA6B;IAC7B,eAAe;IACf,gBAAgB;IAChB,iBAAiB,EAAE,WAAW;IAC9B,uBAAuB;;IAEvB;QACI,qCAAqC;QACrC,yCAAyC;QACzC,cAAc;IAClB;;IAEA;QACI,qCAAqC;QACrC,yCAAyC;QACzC,WAAW;IACf;;IAEA;QACI,sCAAsC;QACtC,0CAA0C;QAC1C,cAAc;IAClB;;IAEA;QACI,WAAW;QACX,YAAY;QACZ,cAAc;IAClB;AACJ","sourcesContent":[".wrapper {\n    display: flex;\n    align-items: center;\n    gap: 10px;\n    width: 100%;\n    padding: 15px;\n    border-radius: 12px;\n    border: 1px solid transparent;\n    font-size: 13px;\n    font-weight: 400;\n    line-height: 150%; /* 19.5px */\n    letter-spacing: -0.43px;\n\n    &.error {\n        border-color: rgba(255, 59, 48, 0.40);\n        background-color: rgba(255, 59, 48, 0.15);\n        color: #FF3B30;\n    }\n\n    &.warning {\n        border-color: rgba(255, 214, 0, 0.40);\n        background-color: rgba(255, 214, 0, 0.15);\n        color: #F90;\n    }\n\n    &.info {\n        border-color: rgba(62, 159, 248, 0.40);\n        background-color: rgba(62, 159, 248, 0.10);\n        color: #3E9FF8;\n    }\n\n    svg {\n        width: 24px;\n        height: auto;\n        flex-shrink: 0;\n    }\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `Alert-module__wrapper___nFr6R`,
	"error": `Alert-module__error___QNSOB`,
	"warning": `Alert-module__warning___wC4Jw`,
	"info": `Alert-module__info___qW0eD`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/AnotherProxy/AnotherProxy.module.css":
/*!*************************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/AnotherProxy/AnotherProxy.module.css ***!
  \*************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --another-proxy-title: #000000;
}

.dark{
    --another-proxy-title: #FFFFFF;
}

.AnotherProxy-module__wrapper___CtCkJ {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    flex-direction: column;
}

.AnotherProxy-module__text-container___eaBDb {
    display: flex;
    padding: 0 1.75em;
    flex-direction: column;
    margin: 1.5em 0 1em 0;
    row-gap: .25em;
    color: var(--another-proxy-title);
}

.AnotherProxy-module__title___ZR7j1 {
    font-weight: 700;
    text-align: center;
    font-size: 1.5em;
    line-height: 1.17em;
}

.AnotherProxy-module__text___mZNkB {
    font-size: .875em;
    line-height: 1.43em;
    font-weight: 400;
    text-align: center;
}

.AnotherProxy-module__button___v6EDo{
    padding: 0 1.75em;
    row-gap: .5em;
    align-self: stretch;
    display: flex;
    flex-direction: column;

    button{
        width: 100%;
        padding: 10px 16px;
        border: none;
        border-radius: 8px;
        font-family: inherit;
        font-size: 16px;
        font-weight: 500;
        line-height: 20px;
        cursor: pointer;
        background: #3E9FF8;
        color: #fff;
        transition: background-color 0.3s;

        &:hover {
            background-color: #58AFFF;
        }
    }
}`, "",{"version":3,"sources":["webpack://./src/components/shared/components/AnotherProxy/AnotherProxy.module.css"],"names":[],"mappings":"AAAA;IACI,8BAA8B;AAClC;;AAEA;IACI,8BAA8B;AAClC;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,YAAY;IACZ,sBAAsB;AAC1B;;AAEA;IACI,aAAa;IACb,iBAAiB;IACjB,sBAAsB;IACtB,qBAAqB;IACrB,cAAc;IACd,iCAAiC;AACrC;;AAEA;IACI,gBAAgB;IAChB,kBAAkB;IAClB,gBAAgB;IAChB,mBAAmB;AACvB;;AAEA;IACI,iBAAiB;IACjB,mBAAmB;IACnB,gBAAgB;IAChB,kBAAkB;AACtB;;AAEA;IACI,iBAAiB;IACjB,aAAa;IACb,mBAAmB;IACnB,aAAa;IACb,sBAAsB;;IAEtB;QACI,WAAW;QACX,kBAAkB;QAClB,YAAY;QACZ,kBAAkB;QAClB,oBAAoB;QACpB,eAAe;QACf,gBAAgB;QAChB,iBAAiB;QACjB,eAAe;QACf,mBAAmB;QACnB,WAAW;QACX,iCAAiC;;QAEjC;YACI,yBAAyB;QAC7B;IACJ;AACJ","sourcesContent":[":root {\n    --another-proxy-title: #000000;\n}\n\n:global(.dark ){\n    --another-proxy-title: #FFFFFF;\n}\n\n.wrapper {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    height: 100%;\n    flex-direction: column;\n}\n\n.text-container {\n    display: flex;\n    padding: 0 1.75em;\n    flex-direction: column;\n    margin: 1.5em 0 1em 0;\n    row-gap: .25em;\n    color: var(--another-proxy-title);\n}\n\n.title {\n    font-weight: 700;\n    text-align: center;\n    font-size: 1.5em;\n    line-height: 1.17em;\n}\n\n.text {\n    font-size: .875em;\n    line-height: 1.43em;\n    font-weight: 400;\n    text-align: center;\n}\n\n.button{\n    padding: 0 1.75em;\n    row-gap: .5em;\n    align-self: stretch;\n    display: flex;\n    flex-direction: column;\n\n    button{\n        width: 100%;\n        padding: 10px 16px;\n        border: none;\n        border-radius: 8px;\n        font-family: inherit;\n        font-size: 16px;\n        font-weight: 500;\n        line-height: 20px;\n        cursor: pointer;\n        background: #3E9FF8;\n        color: #fff;\n        transition: background-color 0.3s;\n\n        &:hover {\n            background-color: #58AFFF;\n        }\n    }\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `AnotherProxy-module__wrapper___CtCkJ`,
	"text-container": `AnotherProxy-module__text-container___eaBDb`,
	"textContainer": `AnotherProxy-module__text-container___eaBDb`,
	"title": `AnotherProxy-module__title___ZR7j1`,
	"text": `AnotherProxy-module__text___mZNkB`,
	"button": `AnotherProxy-module__button___v6EDo`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/BottomMenu/BottomMenu.module.css":
/*!*********************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/BottomMenu/BottomMenu.module.css ***!
  \*********************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.BottomMenu-module__menu___jszuK {
    height: 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 30px;
    background: var(--footer-bg);
    margin-top: auto;
    border-top: 1px solid rgba(0, 0, 0, 0.08);
}

.BottomMenu-module__button___CtLDS {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: transparent;
    cursor: pointer;
    color: var(--text-primary);
    border: none;
    transition: color 0.2s;

    &:hover,
    &.BottomMenu-module__active___bDH4n { 
        color: var(--footer-icon-active);
    }
}`, "",{"version":3,"sources":["webpack://./src/components/shared/components/BottomMenu/BottomMenu.module.css"],"names":[],"mappings":"AAAA;IACI,YAAY;IACZ,aAAa;IACb,8BAA8B;IAC9B,mBAAmB;IACnB,eAAe;IACf,4BAA4B;IAC5B,gBAAgB;IAChB,yCAAyC;AAC7C;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,WAAW;IACX,YAAY;IACZ,uBAAuB;IACvB,eAAe;IACf,0BAA0B;IAC1B,YAAY;IACZ,sBAAsB;;IAEtB;;QAEI,gCAAgC;IACpC;AACJ","sourcesContent":[".menu {\n    height: 50px;\n    display: flex;\n    justify-content: space-between;\n    align-items: center;\n    padding: 0 30px;\n    background: var(--footer-bg);\n    margin-top: auto;\n    border-top: 1px solid rgba(0, 0, 0, 0.08);\n}\n\n.button {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 40px;\n    height: 40px;\n    background: transparent;\n    cursor: pointer;\n    color: var(--text-primary);\n    border: none;\n    transition: color 0.2s;\n\n    &:hover,\n    &.active { \n        color: var(--footer-icon-active);\n    }\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"menu": `BottomMenu-module__menu___jszuK`,
	"button": `BottomMenu-module__button___CtLDS`,
	"active": `BottomMenu-module__active___bDH4n`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Checkbox/Checkbox.module.css":
/*!*****************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Checkbox/Checkbox.module.css ***!
  \*****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root{
    --checkbox-border: #3C3C4399;
}

.dark{
    --checkbox-border: #FFFFFF99;
}

.Checkbox-module__wrapper___pq7zG {
    display: flex;
    align-items: center;
    height: 48px;
    column-gap: 15px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: var(--text-value-selected);

    &:hover {
        .Checkbox-module__button___QoPrT {
            border-color: #3E9FF8;
        }
    }

    &.Checkbox-module__checked___QSoeQ {
        .Checkbox-module__button___QoPrT {
            background-color: #3E9FF8;

            svg {
                opacity: 1;
            }
        }
    }
}

.Checkbox-module__button___QoPrT {
    width: 18px;
    height: 18px;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--checkbox-border);
    transition: border-color 0.3s, background-color 0.3s;

    svg {
        opacity: 0;
        transition: opacity 0.3s;
    }
}
`, "",{"version":3,"sources":["webpack://./src/components/shared/components/Checkbox/Checkbox.module.css"],"names":[],"mappings":"AAAA;IACI,4BAA4B;AAChC;;AAEA;IACI,4BAA4B;AAChC;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,YAAY;IACZ,gBAAgB;IAChB,eAAe;IACf,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,iCAAiC;;IAEjC;QACI;YACI,qBAAqB;QACzB;IACJ;;IAEA;QACI;YACI,yBAAyB;;YAEzB;gBACI,UAAU;YACd;QACJ;IACJ;AACJ;;AAEA;IACI,WAAW;IACX,YAAY;IACZ,kBAAkB;IAClB,aAAa;IACb,mBAAmB;IACnB,uBAAuB;IACvB,wCAAwC;IACxC,oDAAoD;;IAEpD;QACI,UAAU;QACV,wBAAwB;IAC5B;AACJ","sourcesContent":[":root{\n    --checkbox-border: #3C3C4399;\n}\n\n:global(.dark ){\n    --checkbox-border: #FFFFFF99;\n}\n\n.wrapper {\n    display: flex;\n    align-items: center;\n    height: 48px;\n    column-gap: 15px;\n    cursor: pointer;\n    font-size: 16px;\n    font-weight: 400;\n    line-height: 24px;\n    color: var(--text-value-selected);\n\n    &:hover {\n        .button {\n            border-color: #3E9FF8;\n        }\n    }\n\n    &.checked {\n        .button {\n            background-color: #3E9FF8;\n\n            svg {\n                opacity: 1;\n            }\n        }\n    }\n}\n\n.button {\n    width: 18px;\n    height: 18px;\n    border-radius: 2px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    border: 1px solid var(--checkbox-border);\n    transition: border-color 0.3s, background-color 0.3s;\n\n    svg {\n        opacity: 0;\n        transition: opacity 0.3s;\n    }\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `Checkbox-module__wrapper___pq7zG`,
	"button": `Checkbox-module__button___QoPrT`,
	"checked": `Checkbox-module__checked___QSoeQ`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.module.css":
/*!*********************************************************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.module.css ***!
  \*********************************************************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
  --another-proxy-title: #000000;
}

.dark{
  --another-proxy-title: #FFFFFF;
}

.DisabledPermissionsExtension-module__wrapper___hP0pG {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  flex-direction: column;
}

.DisabledPermissionsExtension-module__text-container___H9UiK {
  display: flex;
  padding: 0 1.75em;
  flex-direction: column;
  margin: 1.5em 0 1em 0;
  row-gap: .25em;
  color: var(--another-proxy-title);
}

.DisabledPermissionsExtension-module__title___SG1ur {
  font-weight: 700;
  text-align: center;
  font-size: 1.5em;
  line-height: 1.17em;
}

.DisabledPermissionsExtension-module__text___bMhdt {
  font-size: .875em;
  line-height: 1.43em;
  font-weight: 400;
  text-align: center;
}

.DisabledPermissionsExtension-module__button___L0jRa{
  padding: 0 1.75em;
  row-gap: .5em;
  align-self: stretch;
  display: flex;
  flex-direction: column;

  button{
    width: 100%;
    padding: 10px 16px;
    border: none;
    border-radius: 8px;
    font-family: inherit;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    cursor: pointer;
    background: #3E9FF8;
    color: #fff;
    transition: background-color 0.3s;

    &:hover {
      background-color: #58AFFF;
    }
  }
}
`, "",{"version":3,"sources":["webpack://./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.module.css"],"names":[],"mappings":"AAAA;EACE,8BAA8B;AAChC;;AAEA;EACE,8BAA8B;AAChC;;AAEA;EACE,aAAa;EACb,mBAAmB;EACnB,uBAAuB;EACvB,YAAY;EACZ,sBAAsB;AACxB;;AAEA;EACE,aAAa;EACb,iBAAiB;EACjB,sBAAsB;EACtB,qBAAqB;EACrB,cAAc;EACd,iCAAiC;AACnC;;AAEA;EACE,gBAAgB;EAChB,kBAAkB;EAClB,gBAAgB;EAChB,mBAAmB;AACrB;;AAEA;EACE,iBAAiB;EACjB,mBAAmB;EACnB,gBAAgB;EAChB,kBAAkB;AACpB;;AAEA;EACE,iBAAiB;EACjB,aAAa;EACb,mBAAmB;EACnB,aAAa;EACb,sBAAsB;;EAEtB;IACE,WAAW;IACX,kBAAkB;IAClB,YAAY;IACZ,kBAAkB;IAClB,oBAAoB;IACpB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,eAAe;IACf,mBAAmB;IACnB,WAAW;IACX,iCAAiC;;IAEjC;MACE,yBAAyB;IAC3B;EACF;AACF","sourcesContent":[":root {\n  --another-proxy-title: #000000;\n}\n\n:global(.dark ){\n  --another-proxy-title: #FFFFFF;\n}\n\n.wrapper {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  height: 100%;\n  flex-direction: column;\n}\n\n.text-container {\n  display: flex;\n  padding: 0 1.75em;\n  flex-direction: column;\n  margin: 1.5em 0 1em 0;\n  row-gap: .25em;\n  color: var(--another-proxy-title);\n}\n\n.title {\n  font-weight: 700;\n  text-align: center;\n  font-size: 1.5em;\n  line-height: 1.17em;\n}\n\n.text {\n  font-size: .875em;\n  line-height: 1.43em;\n  font-weight: 400;\n  text-align: center;\n}\n\n.button{\n  padding: 0 1.75em;\n  row-gap: .5em;\n  align-self: stretch;\n  display: flex;\n  flex-direction: column;\n\n  button{\n    width: 100%;\n    padding: 10px 16px;\n    border: none;\n    border-radius: 8px;\n    font-family: inherit;\n    font-size: 16px;\n    font-weight: 500;\n    line-height: 20px;\n    cursor: pointer;\n    background: #3E9FF8;\n    color: #fff;\n    transition: background-color 0.3s;\n\n    &:hover {\n      background-color: #58AFFF;\n    }\n  }\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"wrapper": `DisabledPermissionsExtension-module__wrapper___hP0pG`,
	"text-container": `DisabledPermissionsExtension-module__text-container___H9UiK`,
	"textContainer": `DisabledPermissionsExtension-module__text-container___H9UiK`,
	"title": `DisabledPermissionsExtension-module__title___SG1ur`,
	"text": `DisabledPermissionsExtension-module__text___bMhdt`,
	"button": `DisabledPermissionsExtension-module__button___L0jRa`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Input/input.module.css":
/*!***********************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Input/input.module.css ***!
  \***********************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `.input-module__input-wrapper___J55VW {
  position: relative;
  border: 1px solid var(--border-select);
  border-radius: 8px;
  padding: 12px 16px;
  height:56px;
  transition: border-color 0.2s;
  display: flex;
  align-items: center;
}

.input-module__input-wrapper___J55VW input {
  width: 100%;
  border: none;
  outline: none;
  background: transparent;
  font-size: 16px;
  font-weight: 400;
  color: var(--title-color);
  padding: 0;
  margin: 0;
}

.input-module__input-wrapper___J55VW label {
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 16px;
  font-weight: 400;
  color: var(--text-value-select);
  background: var(--background);
  padding: 0 4px;
  pointer-events: none;
  transition: 0.2s ease;
}

.input-module__input-wrapper___J55VW input:focus + label,
.input-module__input-wrapper___J55VW input:not(:placeholder-shown) + label {
  top: -8px;
  transform: none;
  font-size: 12px;
  font-weight: 400;
  color: var(--text-label-float);
}

.input-module__input-wrapper___J55VW:focus-within {
  border-color:rgba(62, 159, 248, 1)!important;
}


.input-module__input-wrapper___J55VW.input-module__has-error___Pi7FC {
  border-color: rgba(255, 59, 48, 1)!important;
}


.input-module__error-text___vDt58 {
  color:rgba(255, 59, 48, 1);
  font-size: 12px;
  font-weight: 400;
  padding-left: 16px;
}

.input-module__disabled___Z_fHP {
  opacity: 0.5;
}`, "",{"version":3,"sources":["webpack://./src/components/shared/components/Input/input.module.css"],"names":[],"mappings":"AAAA;EACE,kBAAkB;EAClB,sCAAsC;EACtC,kBAAkB;EAClB,kBAAkB;EAClB,WAAW;EACX,6BAA6B;EAC7B,aAAa;EACb,mBAAmB;AACrB;;AAEA;EACE,WAAW;EACX,YAAY;EACZ,aAAa;EACb,uBAAuB;EACvB,eAAe;EACf,gBAAgB;EAChB,yBAAyB;EACzB,UAAU;EACV,SAAS;AACX;;AAEA;EACE,kBAAkB;EAClB,UAAU;EACV,QAAQ;EACR,2BAA2B;EAC3B,eAAe;EACf,gBAAgB;EAChB,+BAA+B;EAC/B,6BAA6B;EAC7B,cAAc;EACd,oBAAoB;EACpB,qBAAqB;AACvB;;AAEA;;EAEE,SAAS;EACT,eAAe;EACf,eAAe;EACf,gBAAgB;EAChB,8BAA8B;AAChC;;AAEA;EACE,4CAA4C;AAC9C;;;AAGA;EACE,4CAA4C;AAC9C;;;AAGA;EACE,0BAA0B;EAC1B,eAAe;EACf,gBAAgB;EAChB,kBAAkB;AACpB;;AAEA;EACE,YAAY;AACd","sourcesContent":[".input-wrapper {\n  position: relative;\n  border: 1px solid var(--border-select);\n  border-radius: 8px;\n  padding: 12px 16px;\n  height:56px;\n  transition: border-color 0.2s;\n  display: flex;\n  align-items: center;\n}\n\n.input-wrapper input {\n  width: 100%;\n  border: none;\n  outline: none;\n  background: transparent;\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--title-color);\n  padding: 0;\n  margin: 0;\n}\n\n.input-wrapper label {\n  position: absolute;\n  left: 12px;\n  top: 50%;\n  transform: translateY(-50%);\n  font-size: 16px;\n  font-weight: 400;\n  color: var(--text-value-select);\n  background: var(--background);\n  padding: 0 4px;\n  pointer-events: none;\n  transition: 0.2s ease;\n}\n\n.input-wrapper input:focus + label,\n.input-wrapper input:not(:placeholder-shown) + label {\n  top: -8px;\n  transform: none;\n  font-size: 12px;\n  font-weight: 400;\n  color: var(--text-label-float);\n}\n\n.input-wrapper:focus-within {\n  border-color:rgba(62, 159, 248, 1)!important;\n}\n\n\n.input-wrapper.has-error {\n  border-color: rgba(255, 59, 48, 1)!important;\n}\n\n\n.error-text {\n  color:rgba(255, 59, 48, 1);\n  font-size: 12px;\n  font-weight: 400;\n  padding-left: 16px;\n}\n\n.disabled {\n  opacity: 0.5;\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"input-wrapper": `input-module__input-wrapper___J55VW`,
	"inputWrapper": `input-module__input-wrapper___J55VW`,
	"has-error": `input-module__has-error___Pi7FC`,
	"hasError": `input-module__has-error___Pi7FC`,
	"error-text": `input-module__error-text___vDt58`,
	"errorText": `input-module__error-text___vDt58`,
	"disabled": `input-module__disabled___Z_fHP`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Selector/Selector.module.css":
/*!*****************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Selector/Selector.module.css ***!
  \*****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --select: #000000; 
    --select-item-background: #FFFFFF;
    --select-item-color: #222222;
    --select-item-background-hover: #F2F2F7;
    --select-item-color-hover: #3E9FF8;
    --select-border: #54545657;
    --select-icon: #222222;
    --select-icon-hover: #3E9FF8;
}

.dark{
    --select: #FFFFFF; 
    --select-item-background: #404042;
    --select-item-color: #FFFFFF;
    --select-item-background-hover: #404042;
    --select-item-color-hover: #3E9FF8;
    --select-border: #54545657;
    --select-icon: #FFFFFF;
    --select-icon-hover: #3E9FF8;
}

.Selector-module__select-wrapper___QPrIK {
    position: relative;

    &:hover {
        .Selector-module__select___YXIjV {
            border-color: #3AA1FF;
        }
    }

    &.Selector-module__active___ajYlt {
        .Selector-module__select___YXIjV {
            border-color: #3AA1FF;
            border-radius: 8px 8px 0 0;
        }
    }
}

.Selector-module__select___YXIjV {
    width: 174px;
    height: 36px;
    padding: 0 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border: 1px solid var(--select-border);
    border-radius: 8px;
    background: transparent;
    cursor: pointer;
    transition: border-color 0.3s;
}

.Selector-module__select-text___uluT6 {
    font-size: 13px;
    font-weight: 400;
    line-height: 16px;
    color: var(--select);
}

.Selector-module__select-icon-open___KY79s {
    transition: transform 0.3s ease;
    transform: rotate(180deg);
    color: var(--select);
}

.Selector-module__select-icon___CWsjz {
    color: var(--select);
    transition: transform 0.3s ease;
}

.Selector-module__select-list___zO0RF {
    position: absolute;
    top: 35px;
    left: 0;
    z-index: 1;
    width: 100%;
    border-radius: 0 0 8px 8px;
    border-right: 1px solid #3AA1FF;
    border-bottom: 1px solid #3AA1FF;
    border-left: 1px solid #3AA1FF;
    background: var(--background);
    overflow: hidden;
}

.Selector-module__select-list-item___f0WZY {
    display: flex;
    align-items: center;
    cursor: pointer;
    height: 36px;
    width: 100%;
    color: var(--select-item-color);
    padding: 0 10px;

    &:hover {
        background: var(--select-bg-hover);
        color: #3AA1FF;
    }

    &.Selector-module__select-list-item-selected___ZFFV8 {
        color: #3AA1FF;
    }
}
`, "",{"version":3,"sources":["webpack://./src/components/shared/components/Selector/Selector.module.css"],"names":[],"mappings":"AAAA;IACI,iBAAiB;IACjB,iCAAiC;IACjC,4BAA4B;IAC5B,uCAAuC;IACvC,kCAAkC;IAClC,0BAA0B;IAC1B,sBAAsB;IACtB,4BAA4B;AAChC;;AAEA;IACI,iBAAiB;IACjB,iCAAiC;IACjC,4BAA4B;IAC5B,uCAAuC;IACvC,kCAAkC;IAClC,0BAA0B;IAC1B,sBAAsB;IACtB,4BAA4B;AAChC;;AAEA;IACI,kBAAkB;;IAElB;QACI;YACI,qBAAqB;QACzB;IACJ;;IAEA;QACI;YACI,qBAAqB;YACrB,0BAA0B;QAC9B;IACJ;AACJ;;AAEA;IACI,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,aAAa;IACb,mBAAmB;IACnB,8BAA8B;IAC9B,sCAAsC;IACtC,kBAAkB;IAClB,uBAAuB;IACvB,eAAe;IACf,6BAA6B;AACjC;;AAEA;IACI,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,oBAAoB;AACxB;;AAEA;IACI,+BAA+B;IAC/B,yBAAyB;IACzB,oBAAoB;AACxB;;AAEA;IACI,oBAAoB;IACpB,+BAA+B;AACnC;;AAEA;IACI,kBAAkB;IAClB,SAAS;IACT,OAAO;IACP,UAAU;IACV,WAAW;IACX,0BAA0B;IAC1B,+BAA+B;IAC/B,gCAAgC;IAChC,8BAA8B;IAC9B,6BAA6B;IAC7B,gBAAgB;AACpB;;AAEA;IACI,aAAa;IACb,mBAAmB;IACnB,eAAe;IACf,YAAY;IACZ,WAAW;IACX,+BAA+B;IAC/B,eAAe;;IAEf;QACI,kCAAkC;QAClC,cAAc;IAClB;;IAEA;QACI,cAAc;IAClB;AACJ","sourcesContent":[":root {\n    --select: #000000; \n    --select-item-background: #FFFFFF;\n    --select-item-color: #222222;\n    --select-item-background-hover: #F2F2F7;\n    --select-item-color-hover: #3E9FF8;\n    --select-border: #54545657;\n    --select-icon: #222222;\n    --select-icon-hover: #3E9FF8;\n}\n\n:global(.dark ){\n    --select: #FFFFFF; \n    --select-item-background: #404042;\n    --select-item-color: #FFFFFF;\n    --select-item-background-hover: #404042;\n    --select-item-color-hover: #3E9FF8;\n    --select-border: #54545657;\n    --select-icon: #FFFFFF;\n    --select-icon-hover: #3E9FF8;\n}\n\n.select-wrapper {\n    position: relative;\n\n    &:hover {\n        .select {\n            border-color: #3AA1FF;\n        }\n    }\n\n    &.active {\n        .select {\n            border-color: #3AA1FF;\n            border-radius: 8px 8px 0 0;\n        }\n    }\n}\n\n.select {\n    width: 174px;\n    height: 36px;\n    padding: 0 10px;\n    display: flex;\n    align-items: center;\n    justify-content: space-between;\n    border: 1px solid var(--select-border);\n    border-radius: 8px;\n    background: transparent;\n    cursor: pointer;\n    transition: border-color 0.3s;\n}\n\n.select-text {\n    font-size: 13px;\n    font-weight: 400;\n    line-height: 16px;\n    color: var(--select);\n}\n\n.select-icon-open {\n    transition: transform 0.3s ease;\n    transform: rotate(180deg);\n    color: var(--select);\n}\n\n.select-icon {\n    color: var(--select);\n    transition: transform 0.3s ease;\n}\n\n.select-list {\n    position: absolute;\n    top: 35px;\n    left: 0;\n    z-index: 1;\n    width: 100%;\n    border-radius: 0 0 8px 8px;\n    border-right: 1px solid #3AA1FF;\n    border-bottom: 1px solid #3AA1FF;\n    border-left: 1px solid #3AA1FF;\n    background: var(--background);\n    overflow: hidden;\n}\n\n.select-list-item {\n    display: flex;\n    align-items: center;\n    cursor: pointer;\n    height: 36px;\n    width: 100%;\n    color: var(--select-item-color);\n    padding: 0 10px;\n\n    &:hover {\n        background: var(--select-bg-hover);\n        color: #3AA1FF;\n    }\n\n    &.select-list-item-selected {\n        color: #3AA1FF;\n    }\n}\n"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"select-wrapper": `Selector-module__select-wrapper___QPrIK`,
	"selectWrapper": `Selector-module__select-wrapper___QPrIK`,
	"select": `Selector-module__select___YXIjV`,
	"active": `Selector-module__active___ajYlt`,
	"select-text": `Selector-module__select-text___uluT6`,
	"selectText": `Selector-module__select-text___uluT6`,
	"select-icon-open": `Selector-module__select-icon-open___KY79s`,
	"selectIconOpen": `Selector-module__select-icon-open___KY79s`,
	"select-icon": `Selector-module__select-icon___CWsjz`,
	"selectIcon": `Selector-module__select-icon___CWsjz`,
	"select-list": `Selector-module__select-list___zO0RF`,
	"selectList": `Selector-module__select-list___zO0RF`,
	"select-list-item": `Selector-module__select-list-item___f0WZY`,
	"selectListItem": `Selector-module__select-list-item___f0WZY`,
	"select-list-item-selected": `Selector-module__select-list-item-selected___ZFFV8`,
	"selectListItemSelected": `Selector-module__select-list-item-selected___ZFFV8`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Textarea/Textarea.module.css":
/*!*****************************************************************************************************************************************!*\
  !*** ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Textarea/Textarea.module.css ***!
  \*****************************************************************************************************************************************/
/***/ ((module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/sourceMaps.js */ "./node_modules/css-loader/dist/runtime/sourceMaps.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../../node_modules/css-loader/dist/runtime/api.js */ "./node_modules/css-loader/dist/runtime/api.js");
/* harmony import */ var _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1__);
// Imports


var ___CSS_LOADER_EXPORT___ = _node_modules_css_loader_dist_runtime_api_js__WEBPACK_IMPORTED_MODULE_1___default()((_node_modules_css_loader_dist_runtime_sourceMaps_js__WEBPACK_IMPORTED_MODULE_0___default()));
// Module
___CSS_LOADER_EXPORT___.push([module.id, `:root {
    --textarea-border: #C7D6DB;
    --textarea-placeholder-color: #3C3C4399;
    --textarea-color: #1D1B20;
}

.dark{
    --textarea-border: #404042;
    --textarea-placeholder-color: #FFFFFF99;
    --textarea-color: #FFFFFF;
}

.Textarea-module__textarea___LYt0V {
    max-width: 358px;
    width: 100%;
    height: 181px;
    padding: 16px;
    border: 1px solid var(--textarea-border);
    color: var(--textarea-color);
    background-color: transparent;
    transition: border-color 0.3s ease;
    border-radius: 8px;
    resize: none;
    font-family: inherit;
    outline: none;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;

    &.Textarea-module__has-error___kBL5Y {
        border-color: rgba(255, 59, 48, 1)
    }

    &:hover,
    &:focus {
        border: 1px solid #3E9FF8;
    }

    &::placeholder {
        color: var(--textarea-placeholder-color);
    }
}

.Textarea-module__error___tVWz9 {
    color:rgba(255, 59, 48, 1);
    font-size: 12px;
    font-weight: 400;
    padding-left: 16px;
    margin-top: 8px;
}`, "",{"version":3,"sources":["webpack://./src/components/shared/components/Textarea/Textarea.module.css"],"names":[],"mappings":"AAAA;IACI,0BAA0B;IAC1B,uCAAuC;IACvC,yBAAyB;AAC7B;;AAEA;IACI,0BAA0B;IAC1B,uCAAuC;IACvC,yBAAyB;AAC7B;;AAEA;IACI,gBAAgB;IAChB,WAAW;IACX,aAAa;IACb,aAAa;IACb,wCAAwC;IACxC,4BAA4B;IAC5B,6BAA6B;IAC7B,kCAAkC;IAClC,kBAAkB;IAClB,YAAY;IACZ,oBAAoB;IACpB,aAAa;IACb,eAAe;IACf,gBAAgB;IAChB,iBAAiB;;IAEjB;QACI;IACJ;;IAEA;;QAEI,yBAAyB;IAC7B;;IAEA;QACI,wCAAwC;IAC5C;AACJ;;AAEA;IACI,0BAA0B;IAC1B,eAAe;IACf,gBAAgB;IAChB,kBAAkB;IAClB,eAAe;AACnB","sourcesContent":[":root {\n    --textarea-border: #C7D6DB;\n    --textarea-placeholder-color: #3C3C4399;\n    --textarea-color: #1D1B20;\n}\n\n:global(.dark ){\n    --textarea-border: #404042;\n    --textarea-placeholder-color: #FFFFFF99;\n    --textarea-color: #FFFFFF;\n}\n\n.textarea {\n    max-width: 358px;\n    width: 100%;\n    height: 181px;\n    padding: 16px;\n    border: 1px solid var(--textarea-border);\n    color: var(--textarea-color);\n    background-color: transparent;\n    transition: border-color 0.3s ease;\n    border-radius: 8px;\n    resize: none;\n    font-family: inherit;\n    outline: none;\n    font-size: 16px;\n    font-weight: 400;\n    line-height: 24px;\n\n    &.has-error {\n        border-color: rgba(255, 59, 48, 1)\n    }\n\n    &:hover,\n    &:focus {\n        border: 1px solid #3E9FF8;\n    }\n\n    &::placeholder {\n        color: var(--textarea-placeholder-color);\n    }\n}\n\n.error {\n    color:rgba(255, 59, 48, 1);\n    font-size: 12px;\n    font-weight: 400;\n    padding-left: 16px;\n    margin-top: 8px;\n}"],"sourceRoot":""}]);
// Exports
___CSS_LOADER_EXPORT___.locals = {
	"textarea": `Textarea-module__textarea___LYt0V`,
	"has-error": `Textarea-module__has-error___kBL5Y`,
	"hasError": `Textarea-module__has-error___kBL5Y`,
	"error": `Textarea-module__error___tVWz9`
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (___CSS_LOADER_EXPORT___);


/***/ }),

/***/ "./node_modules/css-loader/dist/runtime/api.js":
/*!*****************************************************!*\
  !*** ./node_modules/css-loader/dist/runtime/api.js ***!
  \*****************************************************/
/***/ ((module) => {

"use strict";


/*
  MIT License http://www.opensource.org/licenses/mit-license.php
  Author Tobias Koppers @sokra
*/
module.exports = function (cssWithMappingToString) {
  var list = [];

  // return the list of modules as css string
  list.toString = function toString() {
    return this.map(function (item) {
      var content = "";
      var needLayer = typeof item[5] !== "undefined";
      if (item[4]) {
        content += "@supports (".concat(item[4], ") {");
      }
      if (item[2]) {
        content += "@media ".concat(item[2], " {");
      }
      if (needLayer) {
        content += "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {");
      }
      content += cssWithMappingToString(item);
      if (needLayer) {
        content += "}";
      }
      if (item[2]) {
        content += "}";
      }
      if (item[4]) {
        content += "}";
      }
      return content;
    }).join("");
  };

  // import a list of modules into the list
  list.i = function i(modules, media, dedupe, supports, layer) {
    if (typeof modules === "string") {
      modules = [[null, modules, undefined]];
    }
    var alreadyImportedModules = {};
    if (dedupe) {
      for (var k = 0; k < this.length; k++) {
        var id = this[k][0];
        if (id != null) {
          alreadyImportedModules[id] = true;
        }
      }
    }
    for (var _k = 0; _k < modules.length; _k++) {
      var item = [].concat(modules[_k]);
      if (dedupe && alreadyImportedModules[item[0]]) {
        continue;
      }
      if (typeof layer !== "undefined") {
        if (typeof item[5] === "undefined") {
          item[5] = layer;
        } else {
          item[1] = "@layer".concat(item[5].length > 0 ? " ".concat(item[5]) : "", " {").concat(item[1], "}");
          item[5] = layer;
        }
      }
      if (media) {
        if (!item[2]) {
          item[2] = media;
        } else {
          item[1] = "@media ".concat(item[2], " {").concat(item[1], "}");
          item[2] = media;
        }
      }
      if (supports) {
        if (!item[4]) {
          item[4] = "".concat(supports);
        } else {
          item[1] = "@supports (".concat(item[4], ") {").concat(item[1], "}");
          item[4] = supports;
        }
      }
      list.push(item);
    }
  };
  return list;
};

/***/ }),

/***/ "./node_modules/css-loader/dist/runtime/getUrl.js":
/*!********************************************************!*\
  !*** ./node_modules/css-loader/dist/runtime/getUrl.js ***!
  \********************************************************/
/***/ ((module) => {

"use strict";


module.exports = function (url, options) {
  if (!options) {
    options = {};
  }
  if (!url) {
    return url;
  }
  url = String(url.__esModule ? url.default : url);

  // If url is already wrapped in quotes, remove them
  if (/^['"].*['"]$/.test(url)) {
    url = url.slice(1, -1);
  }
  if (options.hash) {
    url += options.hash;
  }

  // Should url be wrapped?
  // See https://drafts.csswg.org/css-values-3/#urls
  if (/["'() \t\n]|(%20)/.test(url) || options.needQuotes) {
    return "\"".concat(url.replace(/"/g, '\\"').replace(/\n/g, "\\n"), "\"");
  }
  return url;
};

/***/ }),

/***/ "./node_modules/css-loader/dist/runtime/sourceMaps.js":
/*!************************************************************!*\
  !*** ./node_modules/css-loader/dist/runtime/sourceMaps.js ***!
  \************************************************************/
/***/ ((module) => {

"use strict";


module.exports = function (item) {
  var content = item[1];
  var cssMapping = item[3];
  if (!cssMapping) {
    return content;
  }
  if (typeof btoa === "function") {
    var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));
    var data = "sourceMappingURL=data:application/json;charset=utf-8;base64,".concat(base64);
    var sourceMapping = "/*# ".concat(data, " */");
    return [content].concat([sourceMapping]).join("\n");
  }
  return [content].join("\n");
};

/***/ }),

/***/ "./node_modules/lucide-react/dist/esm/Icon.js":
/*!****************************************************!*\
  !*** ./node_modules/lucide-react/dist/esm/Icon.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ Icon)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _defaultAttributes_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./defaultAttributes.js */ "./node_modules/lucide-react/dist/esm/defaultAttributes.js");
/* harmony import */ var _shared_src_utils_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./shared/src/utils.js */ "./node_modules/lucide-react/dist/esm/shared/src/utils.js");
/**
 * @license lucide-react v0.481.0 - ISC
 *
 * This source code is licensed under the ISC license.
 * See the LICENSE file in the root directory of this source tree.
 */





const Icon = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(
  ({
    color = "currentColor",
    size = 24,
    strokeWidth = 2,
    absoluteStrokeWidth,
    className = "",
    children,
    iconNode,
    ...rest
  }, ref) => {
    return (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(
      "svg",
      {
        ref,
        ..._defaultAttributes_js__WEBPACK_IMPORTED_MODULE_1__["default"],
        width: size,
        height: size,
        stroke: color,
        strokeWidth: absoluteStrokeWidth ? Number(strokeWidth) * 24 / Number(size) : strokeWidth,
        className: (0,_shared_src_utils_js__WEBPACK_IMPORTED_MODULE_2__.mergeClasses)("lucide", className),
        ...rest
      },
      [
        ...iconNode.map(([tag, attrs]) => (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(tag, attrs)),
        ...Array.isArray(children) ? children : [children]
      ]
    );
  }
);


//# sourceMappingURL=Icon.js.map


/***/ }),

/***/ "./node_modules/lucide-react/dist/esm/createLucideIcon.js":
/*!****************************************************************!*\
  !*** ./node_modules/lucide-react/dist/esm/createLucideIcon.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ createLucideIcon)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _shared_src_utils_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./shared/src/utils.js */ "./node_modules/lucide-react/dist/esm/shared/src/utils.js");
/* harmony import */ var _Icon_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Icon.js */ "./node_modules/lucide-react/dist/esm/Icon.js");
/**
 * @license lucide-react v0.481.0 - ISC
 *
 * This source code is licensed under the ISC license.
 * See the LICENSE file in the root directory of this source tree.
 */





const createLucideIcon = (iconName, iconNode) => {
  const Component = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(
    ({ className, ...props }, ref) => (0,react__WEBPACK_IMPORTED_MODULE_0__.createElement)(_Icon_js__WEBPACK_IMPORTED_MODULE_2__["default"], {
      ref,
      iconNode,
      className: (0,_shared_src_utils_js__WEBPACK_IMPORTED_MODULE_1__.mergeClasses)(`lucide-${(0,_shared_src_utils_js__WEBPACK_IMPORTED_MODULE_1__.toKebabCase)(iconName)}`, className),
      ...props
    })
  );
  Component.displayName = `${iconName}`;
  return Component;
};


//# sourceMappingURL=createLucideIcon.js.map


/***/ }),

/***/ "./node_modules/lucide-react/dist/esm/defaultAttributes.js":
/*!*****************************************************************!*\
  !*** ./node_modules/lucide-react/dist/esm/defaultAttributes.js ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ defaultAttributes)
/* harmony export */ });
/**
 * @license lucide-react v0.481.0 - ISC
 *
 * This source code is licensed under the ISC license.
 * See the LICENSE file in the root directory of this source tree.
 */

var defaultAttributes = {
  xmlns: "http://www.w3.org/2000/svg",
  width: 24,
  height: 24,
  viewBox: "0 0 24 24",
  fill: "none",
  stroke: "currentColor",
  strokeWidth: 2,
  strokeLinecap: "round",
  strokeLinejoin: "round"
};


//# sourceMappingURL=defaultAttributes.js.map


/***/ }),

/***/ "./node_modules/lucide-react/dist/esm/icons/arrow-left.js":
/*!****************************************************************!*\
  !*** ./node_modules/lucide-react/dist/esm/icons/arrow-left.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   __iconNode: () => (/* binding */ __iconNode),
/* harmony export */   "default": () => (/* binding */ ArrowLeft)
/* harmony export */ });
/* harmony import */ var _createLucideIcon_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../createLucideIcon.js */ "./node_modules/lucide-react/dist/esm/createLucideIcon.js");
/**
 * @license lucide-react v0.481.0 - ISC
 *
 * This source code is licensed under the ISC license.
 * See the LICENSE file in the root directory of this source tree.
 */



const __iconNode = [
  ["path", { d: "m12 19-7-7 7-7", key: "1l729n" }],
  ["path", { d: "M19 12H5", key: "x3x0zl" }]
];
const ArrowLeft = (0,_createLucideIcon_js__WEBPACK_IMPORTED_MODULE_0__["default"])("ArrowLeft", __iconNode);


//# sourceMappingURL=arrow-left.js.map


/***/ }),

/***/ "./node_modules/lucide-react/dist/esm/shared/src/utils.js":
/*!****************************************************************!*\
  !*** ./node_modules/lucide-react/dist/esm/shared/src/utils.js ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   mergeClasses: () => (/* binding */ mergeClasses),
/* harmony export */   toKebabCase: () => (/* binding */ toKebabCase)
/* harmony export */ });
/**
 * @license lucide-react v0.481.0 - ISC
 *
 * This source code is licensed under the ISC license.
 * See the LICENSE file in the root directory of this source tree.
 */

const toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
const mergeClasses = (...classes) => classes.filter((className, index, array) => {
  return Boolean(className) && className.trim() !== "" && array.indexOf(className) === index;
}).join(" ").trim();


//# sourceMappingURL=utils.js.map


/***/ }),

/***/ "./node_modules/react-dom/cjs/react-dom-client.development.js":
/*!********************************************************************!*\
  !*** ./node_modules/react-dom/cjs/react-dom-client.development.js ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/**
 * @license React
 * react-dom-client.development.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.
 */

/*
 Modernizr 3.0.0pre (Custom Build) | MIT
*/

 true &&
  (function () {
    function findHook(fiber, id) {
      for (fiber = fiber.memoizedState; null !== fiber && 0 < id; )
        (fiber = fiber.next), id--;
      return fiber;
    }
    function copyWithSetImpl(obj, path, index, value) {
      if (index >= path.length) return value;
      var key = path[index],
        updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
      updated[key] = copyWithSetImpl(obj[key], path, index + 1, value);
      return updated;
    }
    function copyWithRename(obj, oldPath, newPath) {
      if (oldPath.length !== newPath.length)
        console.warn("copyWithRename() expects paths of the same length");
      else {
        for (var i = 0; i < newPath.length - 1; i++)
          if (oldPath[i] !== newPath[i]) {
            console.warn(
              "copyWithRename() expects paths to be the same except for the deepest key"
            );
            return;
          }
        return copyWithRenameImpl(obj, oldPath, newPath, 0);
      }
    }
    function copyWithRenameImpl(obj, oldPath, newPath, index) {
      var oldKey = oldPath[index],
        updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
      index + 1 === oldPath.length
        ? ((updated[newPath[index]] = updated[oldKey]),
          isArrayImpl(updated)
            ? updated.splice(oldKey, 1)
            : delete updated[oldKey])
        : (updated[oldKey] = copyWithRenameImpl(
            obj[oldKey],
            oldPath,
            newPath,
            index + 1
          ));
      return updated;
    }
    function copyWithDeleteImpl(obj, path, index) {
      var key = path[index],
        updated = isArrayImpl(obj) ? obj.slice() : assign({}, obj);
      if (index + 1 === path.length)
        return (
          isArrayImpl(updated) ? updated.splice(key, 1) : delete updated[key],
          updated
        );
      updated[key] = copyWithDeleteImpl(obj[key], path, index + 1);
      return updated;
    }
    function shouldSuspendImpl() {
      return !1;
    }
    function shouldErrorImpl() {
      return null;
    }
    function warnInvalidHookAccess() {
      console.error(
        "Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks"
      );
    }
    function warnInvalidContextAccess() {
      console.error(
        "Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."
      );
    }
    function noop() {}
    function warnForMissingKey() {}
    function setToSortedString(set) {
      var array = [];
      set.forEach(function (value) {
        array.push(value);
      });
      return array.sort().join(", ");
    }
    function createFiber(tag, pendingProps, key, mode) {
      return new FiberNode(tag, pendingProps, key, mode);
    }
    function scheduleRoot(root, element) {
      root.context === emptyContextObject &&
        (updateContainerImpl(root.current, 2, element, root, null, null),
        flushSyncWork$1());
    }
    function scheduleRefresh(root, update) {
      if (null !== resolveFamily) {
        var staleFamilies = update.staleFamilies;
        update = update.updatedFamilies;
        flushPendingEffects();
        scheduleFibersWithFamiliesRecursively(
          root.current,
          update,
          staleFamilies
        );
        flushSyncWork$1();
      }
    }
    function setRefreshHandler(handler) {
      resolveFamily = handler;
    }
    function isValidContainer(node) {
      return !(
        !node ||
        (1 !== node.nodeType && 9 !== node.nodeType && 11 !== node.nodeType)
      );
    }
    function getNearestMountedFiber(fiber) {
      var node = fiber,
        nearestMounted = fiber;
      if (fiber.alternate) for (; node.return; ) node = node.return;
      else {
        fiber = node;
        do
          (node = fiber),
            0 !== (node.flags & 4098) && (nearestMounted = node.return),
            (fiber = node.return);
        while (fiber);
      }
      return 3 === node.tag ? nearestMounted : null;
    }
    function getSuspenseInstanceFromFiber(fiber) {
      if (13 === fiber.tag) {
        var suspenseState = fiber.memoizedState;
        null === suspenseState &&
          ((fiber = fiber.alternate),
          null !== fiber && (suspenseState = fiber.memoizedState));
        if (null !== suspenseState) return suspenseState.dehydrated;
      }
      return null;
    }
    function getActivityInstanceFromFiber(fiber) {
      if (31 === fiber.tag) {
        var activityState = fiber.memoizedState;
        null === activityState &&
          ((fiber = fiber.alternate),
          null !== fiber && (activityState = fiber.memoizedState));
        if (null !== activityState) return activityState.dehydrated;
      }
      return null;
    }
    function assertIsMounted(fiber) {
      if (getNearestMountedFiber(fiber) !== fiber)
        throw Error("Unable to find node on an unmounted component.");
    }
    function findCurrentFiberUsingSlowPath(fiber) {
      var alternate = fiber.alternate;
      if (!alternate) {
        alternate = getNearestMountedFiber(fiber);
        if (null === alternate)
          throw Error("Unable to find node on an unmounted component.");
        return alternate !== fiber ? null : fiber;
      }
      for (var a = fiber, b = alternate; ; ) {
        var parentA = a.return;
        if (null === parentA) break;
        var parentB = parentA.alternate;
        if (null === parentB) {
          b = parentA.return;
          if (null !== b) {
            a = b;
            continue;
          }
          break;
        }
        if (parentA.child === parentB.child) {
          for (parentB = parentA.child; parentB; ) {
            if (parentB === a) return assertIsMounted(parentA), fiber;
            if (parentB === b) return assertIsMounted(parentA), alternate;
            parentB = parentB.sibling;
          }
          throw Error("Unable to find node on an unmounted component.");
        }
        if (a.return !== b.return) (a = parentA), (b = parentB);
        else {
          for (var didFindChild = !1, _child = parentA.child; _child; ) {
            if (_child === a) {
              didFindChild = !0;
              a = parentA;
              b = parentB;
              break;
            }
            if (_child === b) {
              didFindChild = !0;
              b = parentA;
              a = parentB;
              break;
            }
            _child = _child.sibling;
          }
          if (!didFindChild) {
            for (_child = parentB.child; _child; ) {
              if (_child === a) {
                didFindChild = !0;
                a = parentB;
                b = parentA;
                break;
              }
              if (_child === b) {
                didFindChild = !0;
                b = parentB;
                a = parentA;
                break;
              }
              _child = _child.sibling;
            }
            if (!didFindChild)
              throw Error(
                "Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue."
              );
          }
        }
        if (a.alternate !== b)
          throw Error(
            "Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue."
          );
      }
      if (3 !== a.tag)
        throw Error("Unable to find node on an unmounted component.");
      return a.stateNode.current === a ? fiber : alternate;
    }
    function findCurrentHostFiberImpl(node) {
      var tag = node.tag;
      if (5 === tag || 26 === tag || 27 === tag || 6 === tag) return node;
      for (node = node.child; null !== node; ) {
        tag = findCurrentHostFiberImpl(node);
        if (null !== tag) return tag;
        node = node.sibling;
      }
      return null;
    }
    function getIteratorFn(maybeIterable) {
      if (null === maybeIterable || "object" !== typeof maybeIterable)
        return null;
      maybeIterable =
        (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||
        maybeIterable["@@iterator"];
      return "function" === typeof maybeIterable ? maybeIterable : null;
    }
    function getComponentNameFromType(type) {
      if (null == type) return null;
      if ("function" === typeof type)
        return type.$$typeof === REACT_CLIENT_REFERENCE
          ? null
          : type.displayName || type.name || null;
      if ("string" === typeof type) return type;
      switch (type) {
        case REACT_FRAGMENT_TYPE:
          return "Fragment";
        case REACT_PROFILER_TYPE:
          return "Profiler";
        case REACT_STRICT_MODE_TYPE:
          return "StrictMode";
        case REACT_SUSPENSE_TYPE:
          return "Suspense";
        case REACT_SUSPENSE_LIST_TYPE:
          return "SuspenseList";
        case REACT_ACTIVITY_TYPE:
          return "Activity";
      }
      if ("object" === typeof type)
        switch (
          ("number" === typeof type.tag &&
            console.error(
              "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
            ),
          type.$$typeof)
        ) {
          case REACT_PORTAL_TYPE:
            return "Portal";
          case REACT_CONTEXT_TYPE:
            return type.displayName || "Context";
          case REACT_CONSUMER_TYPE:
            return (type._context.displayName || "Context") + ".Consumer";
          case REACT_FORWARD_REF_TYPE:
            var innerType = type.render;
            type = type.displayName;
            type ||
              ((type = innerType.displayName || innerType.name || ""),
              (type = "" !== type ? "ForwardRef(" + type + ")" : "ForwardRef"));
            return type;
          case REACT_MEMO_TYPE:
            return (
              (innerType = type.displayName || null),
              null !== innerType
                ? innerType
                : getComponentNameFromType(type.type) || "Memo"
            );
          case REACT_LAZY_TYPE:
            innerType = type._payload;
            type = type._init;
            try {
              return getComponentNameFromType(type(innerType));
            } catch (x) {}
        }
      return null;
    }
    function getComponentNameFromOwner(owner) {
      return "number" === typeof owner.tag
        ? getComponentNameFromFiber(owner)
        : "string" === typeof owner.name
          ? owner.name
          : null;
    }
    function getComponentNameFromFiber(fiber) {
      var type = fiber.type;
      switch (fiber.tag) {
        case 31:
          return "Activity";
        case 24:
          return "Cache";
        case 9:
          return (type._context.displayName || "Context") + ".Consumer";
        case 10:
          return type.displayName || "Context";
        case 18:
          return "DehydratedFragment";
        case 11:
          return (
            (fiber = type.render),
            (fiber = fiber.displayName || fiber.name || ""),
            type.displayName ||
              ("" !== fiber ? "ForwardRef(" + fiber + ")" : "ForwardRef")
          );
        case 7:
          return "Fragment";
        case 26:
        case 27:
        case 5:
          return type;
        case 4:
          return "Portal";
        case 3:
          return "Root";
        case 6:
          return "Text";
        case 16:
          return getComponentNameFromType(type);
        case 8:
          return type === REACT_STRICT_MODE_TYPE ? "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 14:
        case 15:
          if ("function" === typeof type)
            return type.displayName || type.name || null;
          if ("string" === typeof type) return type;
          break;
        case 29:
          type = fiber._debugInfo;
          if (null != type)
            for (var i = type.length - 1; 0 <= i; i--)
              if ("string" === typeof type[i].name) return type[i].name;
          if (null !== fiber.return)
            return getComponentNameFromFiber(fiber.return);
      }
      return null;
    }
    function createCursor(defaultValue) {
      return { current: defaultValue };
    }
    function pop(cursor, fiber) {
      0 > index$jscomp$0
        ? console.error("Unexpected pop.")
        : (fiber !== fiberStack[index$jscomp$0] &&
            console.error("Unexpected Fiber popped."),
          (cursor.current = valueStack[index$jscomp$0]),
          (valueStack[index$jscomp$0] = null),
          (fiberStack[index$jscomp$0] = null),
          index$jscomp$0--);
    }
    function push(cursor, value, fiber) {
      index$jscomp$0++;
      valueStack[index$jscomp$0] = cursor.current;
      fiberStack[index$jscomp$0] = fiber;
      cursor.current = value;
    }
    function requiredContext(c) {
      null === c &&
        console.error(
          "Expected host context to exist. This error is likely caused by a bug in React. Please file an issue."
        );
      return c;
    }
    function pushHostContainer(fiber, nextRootInstance) {
      push(rootInstanceStackCursor, nextRootInstance, fiber);
      push(contextFiberStackCursor, fiber, fiber);
      push(contextStackCursor, null, fiber);
      var nextRootContext = nextRootInstance.nodeType;
      switch (nextRootContext) {
        case 9:
        case 11:
          nextRootContext = 9 === nextRootContext ? "#document" : "#fragment";
          nextRootInstance = (nextRootInstance =
            nextRootInstance.documentElement)
            ? (nextRootInstance = nextRootInstance.namespaceURI)
              ? getOwnHostContext(nextRootInstance)
              : HostContextNamespaceNone
            : HostContextNamespaceNone;
          break;
        default:
          if (
            ((nextRootContext = nextRootInstance.tagName),
            (nextRootInstance = nextRootInstance.namespaceURI))
          )
            (nextRootInstance = getOwnHostContext(nextRootInstance)),
              (nextRootInstance = getChildHostContextProd(
                nextRootInstance,
                nextRootContext
              ));
          else
            switch (nextRootContext) {
              case "svg":
                nextRootInstance = HostContextNamespaceSvg;
                break;
              case "math":
                nextRootInstance = HostContextNamespaceMath;
                break;
              default:
                nextRootInstance = HostContextNamespaceNone;
            }
      }
      nextRootContext = nextRootContext.toLowerCase();
      nextRootContext = updatedAncestorInfoDev(null, nextRootContext);
      nextRootContext = {
        context: nextRootInstance,
        ancestorInfo: nextRootContext
      };
      pop(contextStackCursor, fiber);
      push(contextStackCursor, nextRootContext, fiber);
    }
    function popHostContainer(fiber) {
      pop(contextStackCursor, fiber);
      pop(contextFiberStackCursor, fiber);
      pop(rootInstanceStackCursor, fiber);
    }
    function getHostContext() {
      return requiredContext(contextStackCursor.current);
    }
    function pushHostContext(fiber) {
      null !== fiber.memoizedState &&
        push(hostTransitionProviderCursor, fiber, fiber);
      var context = requiredContext(contextStackCursor.current);
      var type = fiber.type;
      var nextContext = getChildHostContextProd(context.context, type);
      type = updatedAncestorInfoDev(context.ancestorInfo, type);
      nextContext = { context: nextContext, ancestorInfo: type };
      context !== nextContext &&
        (push(contextFiberStackCursor, fiber, fiber),
        push(contextStackCursor, nextContext, fiber));
    }
    function popHostContext(fiber) {
      contextFiberStackCursor.current === fiber &&
        (pop(contextStackCursor, fiber), pop(contextFiberStackCursor, fiber));
      hostTransitionProviderCursor.current === fiber &&
        (pop(hostTransitionProviderCursor, fiber),
        (HostTransitionContext._currentValue = NotPendingTransition));
    }
    function disabledLog() {}
    function disableLogs() {
      if (0 === disabledDepth) {
        prevLog = console.log;
        prevInfo = console.info;
        prevWarn = console.warn;
        prevError = console.error;
        prevGroup = console.group;
        prevGroupCollapsed = console.groupCollapsed;
        prevGroupEnd = console.groupEnd;
        var props = {
          configurable: !0,
          enumerable: !0,
          value: disabledLog,
          writable: !0
        };
        Object.defineProperties(console, {
          info: props,
          log: props,
          warn: props,
          error: props,
          group: props,
          groupCollapsed: props,
          groupEnd: props
        });
      }
      disabledDepth++;
    }
    function reenableLogs() {
      disabledDepth--;
      if (0 === disabledDepth) {
        var props = { configurable: !0, enumerable: !0, writable: !0 };
        Object.defineProperties(console, {
          log: assign({}, props, { value: prevLog }),
          info: assign({}, props, { value: prevInfo }),
          warn: assign({}, props, { value: prevWarn }),
          error: assign({}, props, { value: prevError }),
          group: assign({}, props, { value: prevGroup }),
          groupCollapsed: assign({}, props, { value: prevGroupCollapsed }),
          groupEnd: assign({}, props, { value: prevGroupEnd })
        });
      }
      0 > disabledDepth &&
        console.error(
          "disabledDepth fell below zero. This is a bug in React. Please file an issue."
        );
    }
    function formatOwnerStack(error) {
      var prevPrepareStackTrace = Error.prepareStackTrace;
      Error.prepareStackTrace = void 0;
      error = error.stack;
      Error.prepareStackTrace = prevPrepareStackTrace;
      error.startsWith("Error: react-stack-top-frame\n") &&
        (error = error.slice(29));
      prevPrepareStackTrace = error.indexOf("\n");
      -1 !== prevPrepareStackTrace &&
        (error = error.slice(prevPrepareStackTrace + 1));
      prevPrepareStackTrace = error.indexOf("react_stack_bottom_frame");
      -1 !== prevPrepareStackTrace &&
        (prevPrepareStackTrace = error.lastIndexOf(
          "\n",
          prevPrepareStackTrace
        ));
      if (-1 !== prevPrepareStackTrace)
        error = error.slice(0, prevPrepareStackTrace);
      else return "";
      return error;
    }
    function describeBuiltInComponentFrame(name) {
      if (void 0 === prefix)
        try {
          throw Error();
        } catch (x) {
          var match = x.stack.trim().match(/\n( *(at )?)/);
          prefix = (match && match[1]) || "";
          suffix =
            -1 < x.stack.indexOf("\n    at")
              ? " (<anonymous>)"
              : -1 < x.stack.indexOf("@")
                ? "@unknown:0:0"
                : "";
        }
      return "\n" + prefix + name + suffix;
    }
    function describeNativeComponentFrame(fn, construct) {
      if (!fn || reentry) return "";
      var frame = componentFrameCache.get(fn);
      if (void 0 !== frame) return frame;
      reentry = !0;
      frame = Error.prepareStackTrace;
      Error.prepareStackTrace = void 0;
      var previousDispatcher = null;
      previousDispatcher = ReactSharedInternals.H;
      ReactSharedInternals.H = null;
      disableLogs();
      try {
        var RunInRootFrame = {
          DetermineComponentFrameRoot: function () {
            try {
              if (construct) {
                var Fake = function () {
                  throw Error();
                };
                Object.defineProperty(Fake.prototype, "props", {
                  set: function () {
                    throw Error();
                  }
                });
                if ("object" === typeof Reflect && Reflect.construct) {
                  try {
                    Reflect.construct(Fake, []);
                  } catch (x) {
                    var control = x;
                  }
                  Reflect.construct(fn, [], Fake);
                } else {
                  try {
                    Fake.call();
                  } catch (x$0) {
                    control = x$0;
                  }
                  fn.call(Fake.prototype);
                }
              } else {
                try {
                  throw Error();
                } catch (x$1) {
                  control = x$1;
                }
                (Fake = fn()) &&
                  "function" === typeof Fake.catch &&
                  Fake.catch(function () {});
              }
            } catch (sample) {
              if (sample && control && "string" === typeof sample.stack)
                return [sample.stack, control.stack];
            }
            return [null, null];
          }
        };
        RunInRootFrame.DetermineComponentFrameRoot.displayName =
          "DetermineComponentFrameRoot";
        var namePropDescriptor = Object.getOwnPropertyDescriptor(
          RunInRootFrame.DetermineComponentFrameRoot,
          "name"
        );
        namePropDescriptor &&
          namePropDescriptor.configurable &&
          Object.defineProperty(
            RunInRootFrame.DetermineComponentFrameRoot,
            "name",
            { value: "DetermineComponentFrameRoot" }
          );
        var _RunInRootFrame$Deter =
            RunInRootFrame.DetermineComponentFrameRoot(),
          sampleStack = _RunInRootFrame$Deter[0],
          controlStack = _RunInRootFrame$Deter[1];
        if (sampleStack && controlStack) {
          var sampleLines = sampleStack.split("\n"),
            controlLines = controlStack.split("\n");
          for (
            _RunInRootFrame$Deter = namePropDescriptor = 0;
            namePropDescriptor < sampleLines.length &&
            !sampleLines[namePropDescriptor].includes(
              "DetermineComponentFrameRoot"
            );

          )
            namePropDescriptor++;
          for (
            ;
            _RunInRootFrame$Deter < controlLines.length &&
            !controlLines[_RunInRootFrame$Deter].includes(
              "DetermineComponentFrameRoot"
            );

          )
            _RunInRootFrame$Deter++;
          if (
            namePropDescriptor === sampleLines.length ||
            _RunInRootFrame$Deter === controlLines.length
          )
            for (
              namePropDescriptor = sampleLines.length - 1,
                _RunInRootFrame$Deter = controlLines.length - 1;
              1 <= namePropDescriptor &&
              0 <= _RunInRootFrame$Deter &&
              sampleLines[namePropDescriptor] !==
                controlLines[_RunInRootFrame$Deter];

            )
              _RunInRootFrame$Deter--;
          for (
            ;
            1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter;
            namePropDescriptor--, _RunInRootFrame$Deter--
          )
            if (
              sampleLines[namePropDescriptor] !==
              controlLines[_RunInRootFrame$Deter]
            ) {
              if (1 !== namePropDescriptor || 1 !== _RunInRootFrame$Deter) {
                do
                  if (
                    (namePropDescriptor--,
                    _RunInRootFrame$Deter--,
                    0 > _RunInRootFrame$Deter ||
                      sampleLines[namePropDescriptor] !==
                        controlLines[_RunInRootFrame$Deter])
                  ) {
                    var _frame =
                      "\n" +
                      sampleLines[namePropDescriptor].replace(
                        " at new ",
                        " at "
                      );
                    fn.displayName &&
                      _frame.includes("<anonymous>") &&
                      (_frame = _frame.replace("<anonymous>", fn.displayName));
                    "function" === typeof fn &&
                      componentFrameCache.set(fn, _frame);
                    return _frame;
                  }
                while (1 <= namePropDescriptor && 0 <= _RunInRootFrame$Deter);
              }
              break;
            }
        }
      } finally {
        (reentry = !1),
          (ReactSharedInternals.H = previousDispatcher),
          reenableLogs(),
          (Error.prepareStackTrace = frame);
      }
      sampleLines = (sampleLines = fn ? fn.displayName || fn.name : "")
        ? describeBuiltInComponentFrame(sampleLines)
        : "";
      "function" === typeof fn && componentFrameCache.set(fn, sampleLines);
      return sampleLines;
    }
    function describeFiber(fiber, childFiber) {
      switch (fiber.tag) {
        case 26:
        case 27:
        case 5:
          return describeBuiltInComponentFrame(fiber.type);
        case 16:
          return describeBuiltInComponentFrame("Lazy");
        case 13:
          return fiber.child !== childFiber && null !== childFiber
            ? describeBuiltInComponentFrame("Suspense Fallback")
            : describeBuiltInComponentFrame("Suspense");
        case 19:
          return describeBuiltInComponentFrame("SuspenseList");
        case 0:
        case 15:
          return describeNativeComponentFrame(fiber.type, !1);
        case 11:
          return describeNativeComponentFrame(fiber.type.render, !1);
        case 1:
          return describeNativeComponentFrame(fiber.type, !0);
        case 31:
          return describeBuiltInComponentFrame("Activity");
        default:
          return "";
      }
    }
    function getStackByFiberInDevAndProd(workInProgress) {
      try {
        var info = "",
          previous = null;
        do {
          info += describeFiber(workInProgress, previous);
          var debugInfo = workInProgress._debugInfo;
          if (debugInfo)
            for (var i = debugInfo.length - 1; 0 <= i; i--) {
              var entry = debugInfo[i];
              if ("string" === typeof entry.name) {
                var JSCompiler_temp_const = info;
                a: {
                  var name = entry.name,
                    env = entry.env,
                    location = entry.debugLocation;
                  if (null != location) {
                    var childStack = formatOwnerStack(location),
                      idx = childStack.lastIndexOf("\n"),
                      lastLine =
                        -1 === idx ? childStack : childStack.slice(idx + 1);
                    if (-1 !== lastLine.indexOf(name)) {
                      var JSCompiler_inline_result = "\n" + lastLine;
                      break a;
                    }
                  }
                  JSCompiler_inline_result = describeBuiltInComponentFrame(
                    name + (env ? " [" + env + "]" : "")
                  );
                }
                info = JSCompiler_temp_const + JSCompiler_inline_result;
              }
            }
          previous = workInProgress;
          workInProgress = workInProgress.return;
        } while (workInProgress);
        return info;
      } catch (x) {
        return "\nError generating stack: " + x.message + "\n" + x.stack;
      }
    }
    function describeFunctionComponentFrameWithoutLineNumber(fn) {
      return (fn = fn ? fn.displayName || fn.name : "")
        ? describeBuiltInComponentFrame(fn)
        : "";
    }
    function getCurrentFiberOwnerNameInDevOrNull() {
      if (null === current) return null;
      var owner = current._debugOwner;
      return null != owner ? getComponentNameFromOwner(owner) : null;
    }
    function getCurrentFiberStackInDev() {
      if (null === current) return "";
      var workInProgress = current;
      try {
        var info = "";
        6 === workInProgress.tag && (workInProgress = workInProgress.return);
        switch (workInProgress.tag) {
          case 26:
          case 27:
          case 5:
            info += describeBuiltInComponentFrame(workInProgress.type);
            break;
          case 13:
            info += describeBuiltInComponentFrame("Suspense");
            break;
          case 19:
            info += describeBuiltInComponentFrame("SuspenseList");
            break;
          case 31:
            info += describeBuiltInComponentFrame("Activity");
            break;
          case 30:
          case 0:
          case 15:
          case 1:
            workInProgress._debugOwner ||
              "" !== info ||
              (info += describeFunctionComponentFrameWithoutLineNumber(
                workInProgress.type
              ));
            break;
          case 11:
            workInProgress._debugOwner ||
              "" !== info ||
              (info += describeFunctionComponentFrameWithoutLineNumber(
                workInProgress.type.render
              ));
        }
        for (; workInProgress; )
          if ("number" === typeof workInProgress.tag) {
            var fiber = workInProgress;
            workInProgress = fiber._debugOwner;
            var debugStack = fiber._debugStack;
            if (workInProgress && debugStack) {
              var formattedStack = formatOwnerStack(debugStack);
              "" !== formattedStack && (info += "\n" + formattedStack);
            }
          } else if (null != workInProgress.debugStack) {
            var ownerStack = workInProgress.debugStack;
            (workInProgress = workInProgress.owner) &&
              ownerStack &&
              (info += "\n" + formatOwnerStack(ownerStack));
          } else break;
        var JSCompiler_inline_result = info;
      } catch (x) {
        JSCompiler_inline_result =
          "\nError generating stack: " + x.message + "\n" + x.stack;
      }
      return JSCompiler_inline_result;
    }
    function runWithFiberInDEV(fiber, callback, arg0, arg1, arg2, arg3, arg4) {
      var previousFiber = current;
      setCurrentFiber(fiber);
      try {
        return null !== fiber && fiber._debugTask
          ? fiber._debugTask.run(
              callback.bind(null, arg0, arg1, arg2, arg3, arg4)
            )
          : callback(arg0, arg1, arg2, arg3, arg4);
      } finally {
        setCurrentFiber(previousFiber);
      }
      // removed by dead control flow

    }
    function setCurrentFiber(fiber) {
      ReactSharedInternals.getCurrentStack =
        null === fiber ? null : getCurrentFiberStackInDev;
      isRendering = !1;
      current = fiber;
    }
    function typeName(value) {
      return (
        ("function" === typeof Symbol &&
          Symbol.toStringTag &&
          value[Symbol.toStringTag]) ||
        value.constructor.name ||
        "Object"
      );
    }
    function willCoercionThrow(value) {
      try {
        return testStringCoercion(value), !1;
      } catch (e) {
        return !0;
      }
    }
    function testStringCoercion(value) {
      return "" + value;
    }
    function checkAttributeStringCoercion(value, attributeName) {
      if (willCoercionThrow(value))
        return (
          console.error(
            "The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.",
            attributeName,
            typeName(value)
          ),
          testStringCoercion(value)
        );
    }
    function checkCSSPropertyStringCoercion(value, propName) {
      if (willCoercionThrow(value))
        return (
          console.error(
            "The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.",
            propName,
            typeName(value)
          ),
          testStringCoercion(value)
        );
    }
    function checkFormFieldValueStringCoercion(value) {
      if (willCoercionThrow(value))
        return (
          console.error(
            "Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before using it here.",
            typeName(value)
          ),
          testStringCoercion(value)
        );
    }
    function injectInternals(internals) {
      if ("undefined" === typeof __REACT_DEVTOOLS_GLOBAL_HOOK__) return !1;
      var hook = __REACT_DEVTOOLS_GLOBAL_HOOK__;
      if (hook.isDisabled) return !0;
      if (!hook.supportsFiber)
        return (
          console.error(
            "The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools"
          ),
          !0
        );
      try {
        (rendererID = hook.inject(internals)), (injectedHook = hook);
      } catch (err) {
        console.error("React instrumentation encountered an error: %o.", err);
      }
      return hook.checkDCE ? !0 : !1;
    }
    function setIsStrictModeForDevtools(newIsStrictMode) {
      "function" === typeof log$1 &&
        unstable_setDisableYieldValue(newIsStrictMode);
      if (injectedHook && "function" === typeof injectedHook.setStrictMode)
        try {
          injectedHook.setStrictMode(rendererID, newIsStrictMode);
        } catch (err) {
          hasLoggedError ||
            ((hasLoggedError = !0),
            console.error(
              "React instrumentation encountered an error: %o",
              err
            ));
        }
    }
    function clz32Fallback(x) {
      x >>>= 0;
      return 0 === x ? 32 : (31 - ((log(x) / LN2) | 0)) | 0;
    }
    function getHighestPriorityLanes(lanes) {
      var pendingSyncLanes = lanes & 42;
      if (0 !== pendingSyncLanes) return pendingSyncLanes;
      switch (lanes & -lanes) {
        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:
          return 64;
        case 128:
          return 128;
        case 256:
        case 512:
        case 1024:
        case 2048:
        case 4096:
        case 8192:
        case 16384:
        case 32768:
        case 65536:
        case 131072:
          return lanes & 261888;
        case 262144:
        case 524288:
        case 1048576:
        case 2097152:
          return lanes & 3932160;
        case 4194304:
        case 8388608:
        case 16777216:
        case 33554432:
          return lanes & 62914560;
        case 67108864:
          return 67108864;
        case 134217728:
          return 134217728;
        case 268435456:
          return 268435456;
        case 536870912:
          return 536870912;
        case 1073741824:
          return 0;
        default:
          return (
            console.error(
              "Should have found matching lanes. This is a bug in React."
            ),
            lanes
          );
      }
    }
    function getNextLanes(root, wipLanes, rootHasPendingCommit) {
      var pendingLanes = root.pendingLanes;
      if (0 === pendingLanes) return 0;
      var nextLanes = 0,
        suspendedLanes = root.suspendedLanes,
        pingedLanes = root.pingedLanes;
      root = root.warmLanes;
      var nonIdlePendingLanes = pendingLanes & 134217727;
      0 !== nonIdlePendingLanes
        ? ((pendingLanes = nonIdlePendingLanes & ~suspendedLanes),
          0 !== pendingLanes
            ? (nextLanes = getHighestPriorityLanes(pendingLanes))
            : ((pingedLanes &= nonIdlePendingLanes),
              0 !== pingedLanes
                ? (nextLanes = getHighestPriorityLanes(pingedLanes))
                : rootHasPendingCommit ||
                  ((rootHasPendingCommit = nonIdlePendingLanes & ~root),
                  0 !== rootHasPendingCommit &&
                    (nextLanes =
                      getHighestPriorityLanes(rootHasPendingCommit)))))
        : ((nonIdlePendingLanes = pendingLanes & ~suspendedLanes),
          0 !== nonIdlePendingLanes
            ? (nextLanes = getHighestPriorityLanes(nonIdlePendingLanes))
            : 0 !== pingedLanes
              ? (nextLanes = getHighestPriorityLanes(pingedLanes))
              : rootHasPendingCommit ||
                ((rootHasPendingCommit = pendingLanes & ~root),
                0 !== rootHasPendingCommit &&
                  (nextLanes = getHighestPriorityLanes(rootHasPendingCommit))));
      return 0 === nextLanes
        ? 0
        : 0 !== wipLanes &&
            wipLanes !== nextLanes &&
            0 === (wipLanes & suspendedLanes) &&
            ((suspendedLanes = nextLanes & -nextLanes),
            (rootHasPendingCommit = wipLanes & -wipLanes),
            suspendedLanes >= rootHasPendingCommit ||
              (32 === suspendedLanes && 0 !== (rootHasPendingCommit & 4194048)))
          ? wipLanes
          : nextLanes;
    }
    function checkIfRootIsPrerendering(root, renderLanes) {
      return (
        0 ===
        (root.pendingLanes &
          ~(root.suspendedLanes & ~root.pingedLanes) &
          renderLanes)
      );
    }
    function computeExpirationTime(lane, currentTime) {
      switch (lane) {
        case 1:
        case 2:
        case 4:
        case 8:
        case 64:
          return currentTime + 250;
        case 16:
        case 32:
        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 currentTime + 5e3;
        case 4194304:
        case 8388608:
        case 16777216:
        case 33554432:
          return -1;
        case 67108864:
        case 134217728:
        case 268435456:
        case 536870912:
        case 1073741824:
          return -1;
        default:
          return (
            console.error(
              "Should have found matching lanes. This is a bug in React."
            ),
            -1
          );
      }
    }
    function claimNextRetryLane() {
      var lane = nextRetryLane;
      nextRetryLane <<= 1;
      0 === (nextRetryLane & 62914560) && (nextRetryLane = 4194304);
      return lane;
    }
    function createLaneMap(initial) {
      for (var laneMap = [], i = 0; 31 > i; i++) laneMap.push(initial);
      return laneMap;
    }
    function markRootUpdated$1(root, updateLane) {
      root.pendingLanes |= updateLane;
      268435456 !== updateLane &&
        ((root.suspendedLanes = 0),
        (root.pingedLanes = 0),
        (root.warmLanes = 0));
    }
    function markRootFinished(
      root,
      finishedLanes,
      remainingLanes,
      spawnedLane,
      updatedLanes,
      suspendedRetryLanes
    ) {
      var previouslyPendingLanes = root.pendingLanes;
      root.pendingLanes = remainingLanes;
      root.suspendedLanes = 0;
      root.pingedLanes = 0;
      root.warmLanes = 0;
      root.expiredLanes &= remainingLanes;
      root.entangledLanes &= remainingLanes;
      root.errorRecoveryDisabledLanes &= remainingLanes;
      root.shellSuspendCounter = 0;
      var entanglements = root.entanglements,
        expirationTimes = root.expirationTimes,
        hiddenUpdates = root.hiddenUpdates;
      for (
        remainingLanes = previouslyPendingLanes & ~remainingLanes;
        0 < remainingLanes;

      ) {
        var index = 31 - clz32(remainingLanes),
          lane = 1 << index;
        entanglements[index] = 0;
        expirationTimes[index] = -1;
        var hiddenUpdatesForLane = hiddenUpdates[index];
        if (null !== hiddenUpdatesForLane)
          for (
            hiddenUpdates[index] = null, index = 0;
            index < hiddenUpdatesForLane.length;
            index++
          ) {
            var update = hiddenUpdatesForLane[index];
            null !== update && (update.lane &= -536870913);
          }
        remainingLanes &= ~lane;
      }
      0 !== spawnedLane && markSpawnedDeferredLane(root, spawnedLane, 0);
      0 !== suspendedRetryLanes &&
        0 === updatedLanes &&
        0 !== root.tag &&
        (root.suspendedLanes |=
          suspendedRetryLanes & ~(previouslyPendingLanes & ~finishedLanes));
    }
    function markSpawnedDeferredLane(root, spawnedLane, entangledLanes) {
      root.pendingLanes |= spawnedLane;
      root.suspendedLanes &= ~spawnedLane;
      var spawnedLaneIndex = 31 - clz32(spawnedLane);
      root.entangledLanes |= spawnedLane;
      root.entanglements[spawnedLaneIndex] =
        root.entanglements[spawnedLaneIndex] |
        1073741824 |
        (entangledLanes & 261930);
    }
    function markRootEntangled(root, entangledLanes) {
      var rootEntangledLanes = (root.entangledLanes |= entangledLanes);
      for (root = root.entanglements; rootEntangledLanes; ) {
        var index = 31 - clz32(rootEntangledLanes),
          lane = 1 << index;
        (lane & entangledLanes) | (root[index] & entangledLanes) &&
          (root[index] |= entangledLanes);
        rootEntangledLanes &= ~lane;
      }
    }
    function getBumpedLaneForHydration(root, renderLanes) {
      var renderLane = renderLanes & -renderLanes;
      renderLane =
        0 !== (renderLane & 42)
          ? 1
          : getBumpedLaneForHydrationByLane(renderLane);
      return 0 !== (renderLane & (root.suspendedLanes | renderLanes))
        ? 0
        : renderLane;
    }
    function getBumpedLaneForHydrationByLane(lane) {
      switch (lane) {
        case 2:
          lane = 1;
          break;
        case 8:
          lane = 4;
          break;
        case 32:
          lane = 16;
          break;
        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:
          lane = 128;
          break;
        case 268435456:
          lane = 134217728;
          break;
        default:
          lane = 0;
      }
      return lane;
    }
    function addFiberToLanesMap(root, fiber, lanes) {
      if (isDevToolsPresent)
        for (root = root.pendingUpdatersLaneMap; 0 < lanes; ) {
          var index = 31 - clz32(lanes),
            lane = 1 << index;
          root[index].add(fiber);
          lanes &= ~lane;
        }
    }
    function movePendingFibersToMemoized(root, lanes) {
      if (isDevToolsPresent)
        for (
          var pendingUpdatersLaneMap = root.pendingUpdatersLaneMap,
            memoizedUpdaters = root.memoizedUpdaters;
          0 < lanes;

        ) {
          var index = 31 - clz32(lanes);
          root = 1 << index;
          index = pendingUpdatersLaneMap[index];
          0 < index.size &&
            (index.forEach(function (fiber) {
              var alternate = fiber.alternate;
              (null !== alternate && memoizedUpdaters.has(alternate)) ||
                memoizedUpdaters.add(fiber);
            }),
            index.clear());
          lanes &= ~root;
        }
    }
    function lanesToEventPriority(lanes) {
      lanes &= -lanes;
      return 0 !== DiscreteEventPriority && DiscreteEventPriority < lanes
        ? 0 !== ContinuousEventPriority && ContinuousEventPriority < lanes
          ? 0 !== (lanes & 134217727)
            ? DefaultEventPriority
            : IdleEventPriority
          : ContinuousEventPriority
        : DiscreteEventPriority;
    }
    function resolveUpdatePriority() {
      var updatePriority = ReactDOMSharedInternals.p;
      if (0 !== updatePriority) return updatePriority;
      updatePriority = window.event;
      return void 0 === updatePriority
        ? DefaultEventPriority
        : getEventPriority(updatePriority.type);
    }
    function runWithPriority(priority, fn) {
      var previousPriority = ReactDOMSharedInternals.p;
      try {
        return (ReactDOMSharedInternals.p = priority), fn();
      } finally {
        ReactDOMSharedInternals.p = previousPriority;
      }
    }
    function detachDeletedInstance(node) {
      delete node[internalInstanceKey];
      delete node[internalPropsKey];
      delete node[internalEventHandlersKey];
      delete node[internalEventHandlerListenersKey];
      delete node[internalEventHandlesSetKey];
    }
    function getClosestInstanceFromNode(targetNode) {
      var targetInst = targetNode[internalInstanceKey];
      if (targetInst) return targetInst;
      for (var parentNode = targetNode.parentNode; parentNode; ) {
        if (
          (targetInst =
            parentNode[internalContainerInstanceKey] ||
            parentNode[internalInstanceKey])
        ) {
          parentNode = targetInst.alternate;
          if (
            null !== targetInst.child ||
            (null !== parentNode && null !== parentNode.child)
          )
            for (
              targetNode = getParentHydrationBoundary(targetNode);
              null !== targetNode;

            ) {
              if ((parentNode = targetNode[internalInstanceKey]))
                return parentNode;
              targetNode = getParentHydrationBoundary(targetNode);
            }
          return targetInst;
        }
        targetNode = parentNode;
        parentNode = targetNode.parentNode;
      }
      return null;
    }
    function getInstanceFromNode(node) {
      if (
        (node = node[internalInstanceKey] || node[internalContainerInstanceKey])
      ) {
        var tag = node.tag;
        if (
          5 === tag ||
          6 === tag ||
          13 === tag ||
          31 === tag ||
          26 === tag ||
          27 === tag ||
          3 === tag
        )
          return node;
      }
      return null;
    }
    function getNodeFromInstance(inst) {
      var tag = inst.tag;
      if (5 === tag || 26 === tag || 27 === tag || 6 === tag)
        return inst.stateNode;
      throw Error("getNodeFromInstance: Invalid argument.");
    }
    function getResourcesFromRoot(root) {
      var resources = root[internalRootNodeResourcesKey];
      resources ||
        (resources = root[internalRootNodeResourcesKey] =
          { hoistableStyles: new Map(), hoistableScripts: new Map() });
      return resources;
    }
    function markNodeAsHoistable(node) {
      node[internalHoistableMarker] = !0;
    }
    function registerTwoPhaseEvent(registrationName, dependencies) {
      registerDirectEvent(registrationName, dependencies);
      registerDirectEvent(registrationName + "Capture", dependencies);
    }
    function registerDirectEvent(registrationName, dependencies) {
      registrationNameDependencies[registrationName] &&
        console.error(
          "EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.",
          registrationName
        );
      registrationNameDependencies[registrationName] = dependencies;
      var lowerCasedName = registrationName.toLowerCase();
      possibleRegistrationNames[lowerCasedName] = registrationName;
      "onDoubleClick" === registrationName &&
        (possibleRegistrationNames.ondblclick = registrationName);
      for (
        registrationName = 0;
        registrationName < dependencies.length;
        registrationName++
      )
        allNativeEvents.add(dependencies[registrationName]);
    }
    function checkControlledValueProps(tagName, props) {
      hasReadOnlyValue[props.type] ||
        props.onChange ||
        props.onInput ||
        props.readOnly ||
        props.disabled ||
        null == props.value ||
        ("select" === tagName
          ? console.error(
              "You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`."
            )
          : console.error(
              "You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."
            ));
      props.onChange ||
        props.readOnly ||
        props.disabled ||
        null == props.checked ||
        console.error(
          "You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`."
        );
    }
    function isAttributeNameSafe(attributeName) {
      if (hasOwnProperty.call(validatedAttributeNameCache, attributeName))
        return !0;
      if (hasOwnProperty.call(illegalAttributeNameCache, attributeName))
        return !1;
      if (VALID_ATTRIBUTE_NAME_REGEX.test(attributeName))
        return (validatedAttributeNameCache[attributeName] = !0);
      illegalAttributeNameCache[attributeName] = !0;
      console.error("Invalid attribute name: `%s`", attributeName);
      return !1;
    }
    function getValueForAttributeOnCustomComponent(node, name, expected) {
      if (isAttributeNameSafe(name)) {
        if (!node.hasAttribute(name)) {
          switch (typeof expected) {
            case "symbol":
            case "object":
              return expected;
            case "function":
              return expected;
            case "boolean":
              if (!1 === expected) return expected;
          }
          return void 0 === expected ? void 0 : null;
        }
        node = node.getAttribute(name);
        if ("" === node && !0 === expected) return !0;
        checkAttributeStringCoercion(expected, name);
        return node === "" + expected ? expected : node;
      }
    }
    function setValueForAttribute(node, name, value) {
      if (isAttributeNameSafe(name))
        if (null === value) node.removeAttribute(name);
        else {
          switch (typeof value) {
            case "undefined":
            case "function":
            case "symbol":
              node.removeAttribute(name);
              return;
            case "boolean":
              var prefix = name.toLowerCase().slice(0, 5);
              if ("data-" !== prefix && "aria-" !== prefix) {
                node.removeAttribute(name);
                return;
              }
          }
          checkAttributeStringCoercion(value, name);
          node.setAttribute(name, "" + value);
        }
    }
    function setValueForKnownAttribute(node, name, value) {
      if (null === value) node.removeAttribute(name);
      else {
        switch (typeof value) {
          case "undefined":
          case "function":
          case "symbol":
          case "boolean":
            node.removeAttribute(name);
            return;
        }
        checkAttributeStringCoercion(value, name);
        node.setAttribute(name, "" + value);
      }
    }
    function setValueForNamespacedAttribute(node, namespace, name, value) {
      if (null === value) node.removeAttribute(name);
      else {
        switch (typeof value) {
          case "undefined":
          case "function":
          case "symbol":
          case "boolean":
            node.removeAttribute(name);
            return;
        }
        checkAttributeStringCoercion(value, name);
        node.setAttributeNS(namespace, name, "" + value);
      }
    }
    function getToStringValue(value) {
      switch (typeof value) {
        case "bigint":
        case "boolean":
        case "number":
        case "string":
        case "undefined":
          return value;
        case "object":
          return checkFormFieldValueStringCoercion(value), value;
        default:
          return "";
      }
    }
    function isCheckable(elem) {
      var type = elem.type;
      return (
        (elem = elem.nodeName) &&
        "input" === elem.toLowerCase() &&
        ("checkbox" === type || "radio" === type)
      );
    }
    function trackValueOnNode(node, valueField, currentValue) {
      var descriptor = Object.getOwnPropertyDescriptor(
        node.constructor.prototype,
        valueField
      );
      if (
        !node.hasOwnProperty(valueField) &&
        "undefined" !== typeof descriptor &&
        "function" === typeof descriptor.get &&
        "function" === typeof descriptor.set
      ) {
        var get = descriptor.get,
          set = descriptor.set;
        Object.defineProperty(node, valueField, {
          configurable: !0,
          get: function () {
            return get.call(this);
          },
          set: function (value) {
            checkFormFieldValueStringCoercion(value);
            currentValue = "" + value;
            set.call(this, value);
          }
        });
        Object.defineProperty(node, valueField, {
          enumerable: descriptor.enumerable
        });
        return {
          getValue: function () {
            return currentValue;
          },
          setValue: function (value) {
            checkFormFieldValueStringCoercion(value);
            currentValue = "" + value;
          },
          stopTracking: function () {
            node._valueTracker = null;
            delete node[valueField];
          }
        };
      }
    }
    function track(node) {
      if (!node._valueTracker) {
        var valueField = isCheckable(node) ? "checked" : "value";
        node._valueTracker = trackValueOnNode(
          node,
          valueField,
          "" + node[valueField]
        );
      }
    }
    function updateValueIfChanged(node) {
      if (!node) return !1;
      var tracker = node._valueTracker;
      if (!tracker) return !0;
      var lastValue = tracker.getValue();
      var value = "";
      node &&
        (value = isCheckable(node)
          ? node.checked
            ? "true"
            : "false"
          : node.value);
      node = value;
      return node !== lastValue ? (tracker.setValue(node), !0) : !1;
    }
    function getActiveElement(doc) {
      doc = doc || ("undefined" !== typeof document ? document : void 0);
      if ("undefined" === typeof doc) return null;
      try {
        return doc.activeElement || doc.body;
      } catch (e) {
        return doc.body;
      }
    }
    function escapeSelectorAttributeValueInsideDoubleQuotes(value) {
      return value.replace(
        escapeSelectorAttributeValueInsideDoubleQuotesRegex,
        function (ch) {
          return "\\" + ch.charCodeAt(0).toString(16) + " ";
        }
      );
    }
    function validateInputProps(element, props) {
      void 0 === props.checked ||
        void 0 === props.defaultChecked ||
        didWarnCheckedDefaultChecked ||
        (console.error(
          "%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",
          getCurrentFiberOwnerNameInDevOrNull() || "A component",
          props.type
        ),
        (didWarnCheckedDefaultChecked = !0));
      void 0 === props.value ||
        void 0 === props.defaultValue ||
        didWarnValueDefaultValue$1 ||
        (console.error(
          "%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components",
          getCurrentFiberOwnerNameInDevOrNull() || "A component",
          props.type
        ),
        (didWarnValueDefaultValue$1 = !0));
    }
    function updateInput(
      element,
      value,
      defaultValue,
      lastDefaultValue,
      checked,
      defaultChecked,
      type,
      name
    ) {
      element.name = "";
      null != type &&
      "function" !== typeof type &&
      "symbol" !== typeof type &&
      "boolean" !== typeof type
        ? (checkAttributeStringCoercion(type, "type"), (element.type = type))
        : element.removeAttribute("type");
      if (null != value)
        if ("number" === type) {
          if ((0 === value && "" === element.value) || element.value != value)
            element.value = "" + getToStringValue(value);
        } else
          element.value !== "" + getToStringValue(value) &&
            (element.value = "" + getToStringValue(value));
      else
        ("submit" !== type && "reset" !== type) ||
          element.removeAttribute("value");
      null != value
        ? setDefaultValue(element, type, getToStringValue(value))
        : null != defaultValue
          ? setDefaultValue(element, type, getToStringValue(defaultValue))
          : null != lastDefaultValue && element.removeAttribute("value");
      null == checked &&
        null != defaultChecked &&
        (element.defaultChecked = !!defaultChecked);
      null != checked &&
        (element.checked =
          checked &&
          "function" !== typeof checked &&
          "symbol" !== typeof checked);
      null != name &&
      "function" !== typeof name &&
      "symbol" !== typeof name &&
      "boolean" !== typeof name
        ? (checkAttributeStringCoercion(name, "name"),
          (element.name = "" + getToStringValue(name)))
        : element.removeAttribute("name");
    }
    function initInput(
      element,
      value,
      defaultValue,
      checked,
      defaultChecked,
      type,
      name,
      isHydrating
    ) {
      null != type &&
        "function" !== typeof type &&
        "symbol" !== typeof type &&
        "boolean" !== typeof type &&
        (checkAttributeStringCoercion(type, "type"), (element.type = type));
      if (null != value || null != defaultValue) {
        if (
          !(
            ("submit" !== type && "reset" !== type) ||
            (void 0 !== value && null !== value)
          )
        ) {
          track(element);
          return;
        }
        defaultValue =
          null != defaultValue ? "" + getToStringValue(defaultValue) : "";
        value = null != value ? "" + getToStringValue(value) : defaultValue;
        isHydrating || value === element.value || (element.value = value);
        element.defaultValue = value;
      }
      checked = null != checked ? checked : defaultChecked;
      checked =
        "function" !== typeof checked &&
        "symbol" !== typeof checked &&
        !!checked;
      element.checked = isHydrating ? element.checked : !!checked;
      element.defaultChecked = !!checked;
      null != name &&
        "function" !== typeof name &&
        "symbol" !== typeof name &&
        "boolean" !== typeof name &&
        (checkAttributeStringCoercion(name, "name"), (element.name = name));
      track(element);
    }
    function setDefaultValue(node, type, value) {
      ("number" === type && getActiveElement(node.ownerDocument) === node) ||
        node.defaultValue === "" + value ||
        (node.defaultValue = "" + value);
    }
    function validateOptionProps(element, props) {
      null == props.value &&
        ("object" === typeof props.children && null !== props.children
          ? React.Children.forEach(props.children, function (child) {
              null == child ||
                "string" === typeof child ||
                "number" === typeof child ||
                "bigint" === typeof child ||
                didWarnInvalidChild ||
                ((didWarnInvalidChild = !0),
                console.error(
                  "Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>."
                ));
            })
          : null == props.dangerouslySetInnerHTML ||
            didWarnInvalidInnerHTML ||
            ((didWarnInvalidInnerHTML = !0),
            console.error(
              "Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected."
            )));
      null == props.selected ||
        didWarnSelectedSetOnOption ||
        (console.error(
          "Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>."
        ),
        (didWarnSelectedSetOnOption = !0));
    }
    function getDeclarationErrorAddendum() {
      var ownerName = getCurrentFiberOwnerNameInDevOrNull();
      return ownerName
        ? "\n\nCheck the render method of `" + ownerName + "`."
        : "";
    }
    function updateOptions(node, multiple, propValue, setDefaultSelected) {
      node = node.options;
      if (multiple) {
        multiple = {};
        for (var i = 0; i < propValue.length; i++)
          multiple["$" + propValue[i]] = !0;
        for (propValue = 0; propValue < node.length; propValue++)
          (i = multiple.hasOwnProperty("$" + node[propValue].value)),
            node[propValue].selected !== i && (node[propValue].selected = i),
            i && setDefaultSelected && (node[propValue].defaultSelected = !0);
      } else {
        propValue = "" + getToStringValue(propValue);
        multiple = null;
        for (i = 0; i < node.length; i++) {
          if (node[i].value === propValue) {
            node[i].selected = !0;
            setDefaultSelected && (node[i].defaultSelected = !0);
            return;
          }
          null !== multiple || node[i].disabled || (multiple = node[i]);
        }
        null !== multiple && (multiple.selected = !0);
      }
    }
    function validateSelectProps(element, props) {
      for (element = 0; element < valuePropNames.length; element++) {
        var propName = valuePropNames[element];
        if (null != props[propName]) {
          var propNameIsArray = isArrayImpl(props[propName]);
          props.multiple && !propNameIsArray
            ? console.error(
                "The `%s` prop supplied to <select> must be an array if `multiple` is true.%s",
                propName,
                getDeclarationErrorAddendum()
              )
            : !props.multiple &&
              propNameIsArray &&
              console.error(
                "The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s",
                propName,
                getDeclarationErrorAddendum()
              );
        }
      }
      void 0 === props.value ||
        void 0 === props.defaultValue ||
        didWarnValueDefaultValue ||
        (console.error(
          "Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components"
        ),
        (didWarnValueDefaultValue = !0));
    }
    function validateTextareaProps(element, props) {
      void 0 === props.value ||
        void 0 === props.defaultValue ||
        didWarnValDefaultVal ||
        (console.error(
          "%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components",
          getCurrentFiberOwnerNameInDevOrNull() || "A component"
        ),
        (didWarnValDefaultVal = !0));
      null != props.children &&
        null == props.value &&
        console.error(
          "Use the `defaultValue` or `value` props instead of setting children on <textarea>."
        );
    }
    function updateTextarea(element, value, defaultValue) {
      if (
        null != value &&
        ((value = "" + getToStringValue(value)),
        value !== element.value && (element.value = value),
        null == defaultValue)
      ) {
        element.defaultValue !== value && (element.defaultValue = value);
        return;
      }
      element.defaultValue =
        null != defaultValue ? "" + getToStringValue(defaultValue) : "";
    }
    function initTextarea(element, value, defaultValue, children) {
      if (null == value) {
        if (null != children) {
          if (null != defaultValue)
            throw Error(
              "If you supply `defaultValue` on a <textarea>, do not pass children."
            );
          if (isArrayImpl(children)) {
            if (1 < children.length)
              throw Error("<textarea> can only have at most one child.");
            children = children[0];
          }
          defaultValue = children;
        }
        null == defaultValue && (defaultValue = "");
        value = defaultValue;
      }
      defaultValue = getToStringValue(value);
      element.defaultValue = defaultValue;
      children = element.textContent;
      children === defaultValue &&
        "" !== children &&
        null !== children &&
        (element.value = children);
      track(element);
    }
    function findNotableNode(node, indent) {
      return void 0 === node.serverProps &&
        0 === node.serverTail.length &&
        1 === node.children.length &&
        3 < node.distanceFromLeaf &&
        node.distanceFromLeaf > 15 - indent
        ? findNotableNode(node.children[0], indent)
        : node;
    }
    function indentation(indent) {
      return "  " + "  ".repeat(indent);
    }
    function added(indent) {
      return "+ " + "  ".repeat(indent);
    }
    function removed(indent) {
      return "- " + "  ".repeat(indent);
    }
    function describeFiberType(fiber) {
      switch (fiber.tag) {
        case 26:
        case 27:
        case 5:
          return fiber.type;
        case 16:
          return "Lazy";
        case 31:
          return "Activity";
        case 13:
          return "Suspense";
        case 19:
          return "SuspenseList";
        case 0:
        case 15:
          return (fiber = fiber.type), fiber.displayName || fiber.name || null;
        case 11:
          return (
            (fiber = fiber.type.render), fiber.displayName || fiber.name || null
          );
        case 1:
          return (fiber = fiber.type), fiber.displayName || fiber.name || null;
        default:
          return null;
      }
    }
    function describeTextNode(content, maxLength) {
      return needsEscaping.test(content)
        ? ((content = JSON.stringify(content)),
          content.length > maxLength - 2
            ? 8 > maxLength
              ? '{"..."}'
              : "{" + content.slice(0, maxLength - 7) + '..."}'
            : "{" + content + "}")
        : content.length > maxLength
          ? 5 > maxLength
            ? '{"..."}'
            : content.slice(0, maxLength - 3) + "..."
          : content;
    }
    function describeTextDiff(clientText, serverProps, indent) {
      var maxLength = 120 - 2 * indent;
      if (null === serverProps)
        return added(indent) + describeTextNode(clientText, maxLength) + "\n";
      if ("string" === typeof serverProps) {
        for (
          var firstDiff = 0;
          firstDiff < serverProps.length &&
          firstDiff < clientText.length &&
          serverProps.charCodeAt(firstDiff) ===
            clientText.charCodeAt(firstDiff);
          firstDiff++
        );
        firstDiff > maxLength - 8 &&
          10 < firstDiff &&
          ((clientText = "..." + clientText.slice(firstDiff - 8)),
          (serverProps = "..." + serverProps.slice(firstDiff - 8)));
        return (
          added(indent) +
          describeTextNode(clientText, maxLength) +
          "\n" +
          removed(indent) +
          describeTextNode(serverProps, maxLength) +
          "\n"
        );
      }
      return (
        indentation(indent) + describeTextNode(clientText, maxLength) + "\n"
      );
    }
    function objectName(object) {
      return Object.prototype.toString
        .call(object)
        .replace(/^\[object (.*)\]$/, function (m, p0) {
          return p0;
        });
    }
    function describeValue(value, maxLength) {
      switch (typeof value) {
        case "string":
          return (
            (value = JSON.stringify(value)),
            value.length > maxLength
              ? 5 > maxLength
                ? '"..."'
                : value.slice(0, maxLength - 4) + '..."'
              : value
          );
        case "object":
          if (null === value) return "null";
          if (isArrayImpl(value)) return "[...]";
          if (value.$$typeof === REACT_ELEMENT_TYPE)
            return (maxLength = getComponentNameFromType(value.type))
              ? "<" + maxLength + ">"
              : "<...>";
          var name = objectName(value);
          if ("Object" === name) {
            name = "";
            maxLength -= 2;
            for (var propName in value)
              if (value.hasOwnProperty(propName)) {
                var jsonPropName = JSON.stringify(propName);
                jsonPropName !== '"' + propName + '"' &&
                  (propName = jsonPropName);
                maxLength -= propName.length - 2;
                jsonPropName = describeValue(
                  value[propName],
                  15 > maxLength ? maxLength : 15
                );
                maxLength -= jsonPropName.length;
                if (0 > maxLength) {
                  name += "" === name ? "..." : ", ...";
                  break;
                }
                name +=
                  ("" === name ? "" : ",") + propName + ":" + jsonPropName;
              }
            return "{" + name + "}";
          }
          return name;
        case "function":
          return (maxLength = value.displayName || value.name)
            ? "function " + maxLength
            : "function";
        default:
          return String(value);
      }
    }
    function describePropValue(value, maxLength) {
      return "string" !== typeof value || needsEscaping.test(value)
        ? "{" + describeValue(value, maxLength - 2) + "}"
        : value.length > maxLength - 2
          ? 5 > maxLength
            ? '"..."'
            : '"' + value.slice(0, maxLength - 5) + '..."'
          : '"' + value + '"';
    }
    function describeExpandedElement(type, props, rowPrefix) {
      var remainingRowLength = 120 - rowPrefix.length - type.length,
        properties = [],
        propName;
      for (propName in props)
        if (props.hasOwnProperty(propName) && "children" !== propName) {
          var propValue = describePropValue(
            props[propName],
            120 - rowPrefix.length - propName.length - 1
          );
          remainingRowLength -= propName.length + propValue.length + 2;
          properties.push(propName + "=" + propValue);
        }
      return 0 === properties.length
        ? rowPrefix + "<" + type + ">\n"
        : 0 < remainingRowLength
          ? rowPrefix + "<" + type + " " + properties.join(" ") + ">\n"
          : rowPrefix +
            "<" +
            type +
            "\n" +
            rowPrefix +
            "  " +
            properties.join("\n" + rowPrefix + "  ") +
            "\n" +
            rowPrefix +
            ">\n";
    }
    function describePropertiesDiff(clientObject, serverObject, indent) {
      var properties = "",
        remainingServerProperties = assign({}, serverObject),
        propName;
      for (propName in clientObject)
        if (clientObject.hasOwnProperty(propName)) {
          delete remainingServerProperties[propName];
          var maxLength = 120 - 2 * indent - propName.length - 2,
            clientPropValue = describeValue(clientObject[propName], maxLength);
          serverObject.hasOwnProperty(propName)
            ? ((maxLength = describeValue(serverObject[propName], maxLength)),
              (properties +=
                added(indent) + propName + ": " + clientPropValue + "\n"),
              (properties +=
                removed(indent) + propName + ": " + maxLength + "\n"))
            : (properties +=
                added(indent) + propName + ": " + clientPropValue + "\n");
        }
      for (var _propName in remainingServerProperties)
        remainingServerProperties.hasOwnProperty(_propName) &&
          ((clientObject = describeValue(
            remainingServerProperties[_propName],
            120 - 2 * indent - _propName.length - 2
          )),
          (properties +=
            removed(indent) + _propName + ": " + clientObject + "\n"));
      return properties;
    }
    function describeElementDiff(type, clientProps, serverProps, indent) {
      var content = "",
        serverPropNames = new Map();
      for (propName$jscomp$0 in serverProps)
        serverProps.hasOwnProperty(propName$jscomp$0) &&
          serverPropNames.set(
            propName$jscomp$0.toLowerCase(),
            propName$jscomp$0
          );
      if (1 === serverPropNames.size && serverPropNames.has("children"))
        content += describeExpandedElement(
          type,
          clientProps,
          indentation(indent)
        );
      else {
        for (var _propName2 in clientProps)
          if (
            clientProps.hasOwnProperty(_propName2) &&
            "children" !== _propName2
          ) {
            var maxLength$jscomp$0 =
                120 - 2 * (indent + 1) - _propName2.length - 1,
              serverPropName = serverPropNames.get(_propName2.toLowerCase());
            if (void 0 !== serverPropName) {
              serverPropNames.delete(_propName2.toLowerCase());
              var propName$jscomp$0 = clientProps[_propName2];
              serverPropName = serverProps[serverPropName];
              var clientPropValue = describePropValue(
                propName$jscomp$0,
                maxLength$jscomp$0
              );
              maxLength$jscomp$0 = describePropValue(
                serverPropName,
                maxLength$jscomp$0
              );
              "object" === typeof propName$jscomp$0 &&
              null !== propName$jscomp$0 &&
              "object" === typeof serverPropName &&
              null !== serverPropName &&
              "Object" === objectName(propName$jscomp$0) &&
              "Object" === objectName(serverPropName) &&
              (2 < Object.keys(propName$jscomp$0).length ||
                2 < Object.keys(serverPropName).length ||
                -1 < clientPropValue.indexOf("...") ||
                -1 < maxLength$jscomp$0.indexOf("..."))
                ? (content +=
                    indentation(indent + 1) +
                    _propName2 +
                    "={{\n" +
                    describePropertiesDiff(
                      propName$jscomp$0,
                      serverPropName,
                      indent + 2
                    ) +
                    indentation(indent + 1) +
                    "}}\n")
                : ((content +=
                    added(indent + 1) +
                    _propName2 +
                    "=" +
                    clientPropValue +
                    "\n"),
                  (content +=
                    removed(indent + 1) +
                    _propName2 +
                    "=" +
                    maxLength$jscomp$0 +
                    "\n"));
            } else
              content +=
                indentation(indent + 1) +
                _propName2 +
                "=" +
                describePropValue(clientProps[_propName2], maxLength$jscomp$0) +
                "\n";
          }
        serverPropNames.forEach(function (propName) {
          if ("children" !== propName) {
            var maxLength = 120 - 2 * (indent + 1) - propName.length - 1;
            content +=
              removed(indent + 1) +
              propName +
              "=" +
              describePropValue(serverProps[propName], maxLength) +
              "\n";
          }
        });
        content =
          "" === content
            ? indentation(indent) + "<" + type + ">\n"
            : indentation(indent) +
              "<" +
              type +
              "\n" +
              content +
              indentation(indent) +
              ">\n";
      }
      type = serverProps.children;
      clientProps = clientProps.children;
      if (
        "string" === typeof type ||
        "number" === typeof type ||
        "bigint" === typeof type
      ) {
        serverPropNames = "";
        if (
          "string" === typeof clientProps ||
          "number" === typeof clientProps ||
          "bigint" === typeof clientProps
        )
          serverPropNames = "" + clientProps;
        content += describeTextDiff(serverPropNames, "" + type, indent + 1);
      } else if (
        "string" === typeof clientProps ||
        "number" === typeof clientProps ||
        "bigint" === typeof clientProps
      )
        content =
          null == type
            ? content + describeTextDiff("" + clientProps, null, indent + 1)
            : content + describeTextDiff("" + clientProps, void 0, indent + 1);
      return content;
    }
    function describeSiblingFiber(fiber, indent) {
      var type = describeFiberType(fiber);
      if (null === type) {
        type = "";
        for (fiber = fiber.child; fiber; )
          (type += describeSiblingFiber(fiber, indent)),
            (fiber = fiber.sibling);
        return type;
      }
      return indentation(indent) + "<" + type + ">\n";
    }
    function describeNode(node, indent) {
      var skipToNode = findNotableNode(node, indent);
      if (
        skipToNode !== node &&
        (1 !== node.children.length || node.children[0] !== skipToNode)
      )
        return (
          indentation(indent) + "...\n" + describeNode(skipToNode, indent + 1)
        );
      skipToNode = "";
      var debugInfo = node.fiber._debugInfo;
      if (debugInfo)
        for (var i = 0; i < debugInfo.length; i++) {
          var serverComponentName = debugInfo[i].name;
          "string" === typeof serverComponentName &&
            ((skipToNode +=
              indentation(indent) + "<" + serverComponentName + ">\n"),
            indent++);
        }
      debugInfo = "";
      i = node.fiber.pendingProps;
      if (6 === node.fiber.tag)
        (debugInfo = describeTextDiff(i, node.serverProps, indent)), indent++;
      else if (
        ((serverComponentName = describeFiberType(node.fiber)),
        null !== serverComponentName)
      )
        if (void 0 === node.serverProps) {
          debugInfo = indent;
          var maxLength = 120 - 2 * debugInfo - serverComponentName.length - 2,
            content = "";
          for (propName in i)
            if (i.hasOwnProperty(propName) && "children" !== propName) {
              var propValue = describePropValue(i[propName], 15);
              maxLength -= propName.length + propValue.length + 2;
              if (0 > maxLength) {
                content += " ...";
                break;
              }
              content += " " + propName + "=" + propValue;
            }
          debugInfo =
            indentation(debugInfo) +
            "<" +
            serverComponentName +
            content +
            ">\n";
          indent++;
        } else
          null === node.serverProps
            ? ((debugInfo = describeExpandedElement(
                serverComponentName,
                i,
                added(indent)
              )),
              indent++)
            : "string" === typeof node.serverProps
              ? console.error(
                  "Should not have matched a non HostText fiber to a Text node. This is a bug in React."
                )
              : ((debugInfo = describeElementDiff(
                  serverComponentName,
                  i,
                  node.serverProps,
                  indent
                )),
                indent++);
      var propName = "";
      i = node.fiber.child;
      for (
        serverComponentName = 0;
        i && serverComponentName < node.children.length;

      )
        (maxLength = node.children[serverComponentName]),
          maxLength.fiber === i
            ? ((propName += describeNode(maxLength, indent)),
              serverComponentName++)
            : (propName += describeSiblingFiber(i, indent)),
          (i = i.sibling);
      i &&
        0 < node.children.length &&
        (propName += indentation(indent) + "...\n");
      i = node.serverTail;
      null === node.serverProps && indent--;
      for (node = 0; node < i.length; node++)
        (serverComponentName = i[node]),
          (propName =
            "string" === typeof serverComponentName
              ? propName +
                (removed(indent) +
                  describeTextNode(serverComponentName, 120 - 2 * indent) +
                  "\n")
              : propName +
                describeExpandedElement(
                  serverComponentName.type,
                  serverComponentName.props,
                  removed(indent)
                ));
      return skipToNode + debugInfo + propName;
    }
    function describeDiff(rootNode) {
      try {
        return "\n\n" + describeNode(rootNode, 0);
      } catch (x) {
        return "";
      }
    }
    function describeAncestors(ancestor, child, props) {
      for (var fiber = child, node = null, distanceFromLeaf = 0; fiber; )
        fiber === ancestor && (distanceFromLeaf = 0),
          (node = {
            fiber: fiber,
            children: null !== node ? [node] : [],
            serverProps:
              fiber === child ? props : fiber === ancestor ? null : void 0,
            serverTail: [],
            distanceFromLeaf: distanceFromLeaf
          }),
          distanceFromLeaf++,
          (fiber = fiber.return);
      return null !== node ? describeDiff(node).replaceAll(/^[+-]/gm, ">") : "";
    }
    function updatedAncestorInfoDev(oldInfo, tag) {
      var ancestorInfo = assign({}, oldInfo || emptyAncestorInfoDev),
        info = { tag: tag };
      -1 !== inScopeTags.indexOf(tag) &&
        ((ancestorInfo.aTagInScope = null),
        (ancestorInfo.buttonTagInScope = null),
        (ancestorInfo.nobrTagInScope = null));
      -1 !== buttonScopeTags.indexOf(tag) &&
        (ancestorInfo.pTagInButtonScope = null);
      -1 !== specialTags.indexOf(tag) &&
        "address" !== tag &&
        "div" !== tag &&
        "p" !== tag &&
        ((ancestorInfo.listItemTagAutoclosing = null),
        (ancestorInfo.dlItemTagAutoclosing = null));
      ancestorInfo.current = info;
      "form" === tag && (ancestorInfo.formTag = info);
      "a" === tag && (ancestorInfo.aTagInScope = info);
      "button" === tag && (ancestorInfo.buttonTagInScope = info);
      "nobr" === tag && (ancestorInfo.nobrTagInScope = info);
      "p" === tag && (ancestorInfo.pTagInButtonScope = info);
      "li" === tag && (ancestorInfo.listItemTagAutoclosing = info);
      if ("dd" === tag || "dt" === tag)
        ancestorInfo.dlItemTagAutoclosing = info;
      "#document" === tag || "html" === tag
        ? (ancestorInfo.containerTagInScope = null)
        : ancestorInfo.containerTagInScope ||
          (ancestorInfo.containerTagInScope = info);
      null !== oldInfo ||
      ("#document" !== tag && "html" !== tag && "body" !== tag)
        ? !0 === ancestorInfo.implicitRootScope &&
          (ancestorInfo.implicitRootScope = !1)
        : (ancestorInfo.implicitRootScope = !0);
      return ancestorInfo;
    }
    function isTagValidWithParent(tag, parentTag, implicitRootScope) {
      switch (parentTag) {
        case "select":
          return (
            "hr" === tag ||
            "option" === tag ||
            "optgroup" === tag ||
            "script" === tag ||
            "template" === tag ||
            "#text" === tag
          );
        case "optgroup":
          return "option" === tag || "#text" === tag;
        case "option":
          return "#text" === tag;
        case "tr":
          return (
            "th" === tag ||
            "td" === tag ||
            "style" === tag ||
            "script" === tag ||
            "template" === tag
          );
        case "tbody":
        case "thead":
        case "tfoot":
          return (
            "tr" === tag ||
            "style" === tag ||
            "script" === tag ||
            "template" === tag
          );
        case "colgroup":
          return "col" === tag || "template" === tag;
        case "table":
          return (
            "caption" === tag ||
            "colgroup" === tag ||
            "tbody" === tag ||
            "tfoot" === tag ||
            "thead" === tag ||
            "style" === tag ||
            "script" === tag ||
            "template" === tag
          );
        case "head":
          return (
            "base" === tag ||
            "basefont" === tag ||
            "bgsound" === tag ||
            "link" === tag ||
            "meta" === tag ||
            "title" === tag ||
            "noscript" === tag ||
            "noframes" === tag ||
            "style" === tag ||
            "script" === tag ||
            "template" === tag
          );
        case "html":
          if (implicitRootScope) break;
          return "head" === tag || "body" === tag || "frameset" === tag;
        case "frameset":
          return "frame" === tag;
        case "#document":
          if (!implicitRootScope) return "html" === tag;
      }
      switch (tag) {
        case "h1":
        case "h2":
        case "h3":
        case "h4":
        case "h5":
        case "h6":
          return (
            "h1" !== parentTag &&
            "h2" !== parentTag &&
            "h3" !== parentTag &&
            "h4" !== parentTag &&
            "h5" !== parentTag &&
            "h6" !== parentTag
          );
        case "rp":
        case "rt":
          return -1 === impliedEndTags.indexOf(parentTag);
        case "caption":
        case "col":
        case "colgroup":
        case "frameset":
        case "frame":
        case "tbody":
        case "td":
        case "tfoot":
        case "th":
        case "thead":
        case "tr":
          return null == parentTag;
        case "head":
          return implicitRootScope || null === parentTag;
        case "html":
          return (
            (implicitRootScope && "#document" === parentTag) ||
            null === parentTag
          );
        case "body":
          return (
            (implicitRootScope &&
              ("#document" === parentTag || "html" === parentTag)) ||
            null === parentTag
          );
      }
      return !0;
    }
    function findInvalidAncestorForTag(tag, ancestorInfo) {
      switch (tag) {
        case "address":
        case "article":
        case "aside":
        case "blockquote":
        case "center":
        case "details":
        case "dialog":
        case "dir":
        case "div":
        case "dl":
        case "fieldset":
        case "figcaption":
        case "figure":
        case "footer":
        case "header":
        case "hgroup":
        case "main":
        case "menu":
        case "nav":
        case "ol":
        case "p":
        case "section":
        case "summary":
        case "ul":
        case "pre":
        case "listing":
        case "table":
        case "hr":
        case "xmp":
        case "h1":
        case "h2":
        case "h3":
        case "h4":
        case "h5":
        case "h6":
          return ancestorInfo.pTagInButtonScope;
        case "form":
          return ancestorInfo.formTag || ancestorInfo.pTagInButtonScope;
        case "li":
          return ancestorInfo.listItemTagAutoclosing;
        case "dd":
        case "dt":
          return ancestorInfo.dlItemTagAutoclosing;
        case "button":
          return ancestorInfo.buttonTagInScope;
        case "a":
          return ancestorInfo.aTagInScope;
        case "nobr":
          return ancestorInfo.nobrTagInScope;
      }
      return null;
    }
    function findAncestor(parent, tagName) {
      for (; parent; ) {
        switch (parent.tag) {
          case 5:
          case 26:
          case 27:
            if (parent.type === tagName) return parent;
        }
        parent = parent.return;
      }
      return null;
    }
    function validateDOMNesting(childTag, ancestorInfo) {
      ancestorInfo = ancestorInfo || emptyAncestorInfoDev;
      var parentInfo = ancestorInfo.current;
      ancestorInfo = (parentInfo = isTagValidWithParent(
        childTag,
        parentInfo && parentInfo.tag,
        ancestorInfo.implicitRootScope
      )
        ? null
        : parentInfo)
        ? null
        : findInvalidAncestorForTag(childTag, ancestorInfo);
      ancestorInfo = parentInfo || ancestorInfo;
      if (!ancestorInfo) return !0;
      var ancestorTag = ancestorInfo.tag;
      ancestorInfo = String(!!parentInfo) + "|" + childTag + "|" + ancestorTag;
      if (didWarn[ancestorInfo]) return !1;
      didWarn[ancestorInfo] = !0;
      var ancestor = (ancestorInfo = current)
          ? findAncestor(ancestorInfo.return, ancestorTag)
          : null,
        ancestorDescription =
          null !== ancestorInfo && null !== ancestor
            ? describeAncestors(ancestor, ancestorInfo, null)
            : "",
        tagDisplayName = "<" + childTag + ">";
      parentInfo
        ? ((parentInfo = ""),
          "table" === ancestorTag &&
            "tr" === childTag &&
            (parentInfo +=
              " Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by the browser."),
          console.error(
            "In HTML, %s cannot be a child of <%s>.%s\nThis will cause a hydration error.%s",
            tagDisplayName,
            ancestorTag,
            parentInfo,
            ancestorDescription
          ))
        : console.error(
            "In HTML, %s cannot be a descendant of <%s>.\nThis will cause a hydration error.%s",
            tagDisplayName,
            ancestorTag,
            ancestorDescription
          );
      ancestorInfo &&
        ((childTag = ancestorInfo.return),
        null === ancestor ||
          null === childTag ||
          (ancestor === childTag &&
            childTag._debugOwner === ancestorInfo._debugOwner) ||
          runWithFiberInDEV(ancestor, function () {
            console.error(
              "<%s> cannot contain a nested %s.\nSee this log for the ancestor stack trace.",
              ancestorTag,
              tagDisplayName
            );
          }));
      return !1;
    }
    function validateTextNesting(childText, parentTag, implicitRootScope) {
      if (implicitRootScope || isTagValidWithParent("#text", parentTag, !1))
        return !0;
      implicitRootScope = "#text|" + parentTag;
      if (didWarn[implicitRootScope]) return !1;
      didWarn[implicitRootScope] = !0;
      var ancestor = (implicitRootScope = current)
        ? findAncestor(implicitRootScope, parentTag)
        : null;
      implicitRootScope =
        null !== implicitRootScope && null !== ancestor
          ? describeAncestors(
              ancestor,
              implicitRootScope,
              6 !== implicitRootScope.tag ? { children: null } : null
            )
          : "";
      /\S/.test(childText)
        ? console.error(
            "In HTML, text nodes cannot be a child of <%s>.\nThis will cause a hydration error.%s",
            parentTag,
            implicitRootScope
          )
        : console.error(
            "In HTML, whitespace text nodes cannot be a child of <%s>. Make sure you don't have any extra whitespace between tags on each line of your source code.\nThis will cause a hydration error.%s",
            parentTag,
            implicitRootScope
          );
      return !1;
    }
    function setTextContent(node, text) {
      if (text) {
        var firstChild = node.firstChild;
        if (
          firstChild &&
          firstChild === node.lastChild &&
          3 === firstChild.nodeType
        ) {
          firstChild.nodeValue = text;
          return;
        }
      }
      node.textContent = text;
    }
    function camelize(string) {
      return string.replace(hyphenPattern, function (_, character) {
        return character.toUpperCase();
      });
    }
    function setValueForStyle(style, styleName, value) {
      var isCustomProperty = 0 === styleName.indexOf("--");
      isCustomProperty ||
        (-1 < styleName.indexOf("-")
          ? (warnedStyleNames.hasOwnProperty(styleName) &&
              warnedStyleNames[styleName]) ||
            ((warnedStyleNames[styleName] = !0),
            console.error(
              "Unsupported style property %s. Did you mean %s?",
              styleName,
              camelize(styleName.replace(msPattern, "ms-"))
            ))
          : badVendoredStyleNamePattern.test(styleName)
            ? (warnedStyleNames.hasOwnProperty(styleName) &&
                warnedStyleNames[styleName]) ||
              ((warnedStyleNames[styleName] = !0),
              console.error(
                "Unsupported vendor-prefixed style property %s. Did you mean %s?",
                styleName,
                styleName.charAt(0).toUpperCase() + styleName.slice(1)
              ))
            : !badStyleValueWithSemicolonPattern.test(value) ||
              (warnedStyleValues.hasOwnProperty(value) &&
                warnedStyleValues[value]) ||
              ((warnedStyleValues[value] = !0),
              console.error(
                'Style property values shouldn\'t contain a semicolon. Try "%s: %s" instead.',
                styleName,
                value.replace(badStyleValueWithSemicolonPattern, "")
              )),
        "number" === typeof value &&
          (isNaN(value)
            ? warnedForNaNValue ||
              ((warnedForNaNValue = !0),
              console.error(
                "`NaN` is an invalid value for the `%s` css style property.",
                styleName
              ))
            : isFinite(value) ||
              warnedForInfinityValue ||
              ((warnedForInfinityValue = !0),
              console.error(
                "`Infinity` is an invalid value for the `%s` css style property.",
                styleName
              ))));
      null == value || "boolean" === typeof value || "" === value
        ? isCustomProperty
          ? style.setProperty(styleName, "")
          : "float" === styleName
            ? (style.cssFloat = "")
            : (style[styleName] = "")
        : isCustomProperty
          ? style.setProperty(styleName, value)
          : "number" !== typeof value ||
              0 === value ||
              unitlessNumbers.has(styleName)
            ? "float" === styleName
              ? (style.cssFloat = value)
              : (checkCSSPropertyStringCoercion(value, styleName),
                (style[styleName] = ("" + value).trim()))
            : (style[styleName] = value + "px");
    }
    function setValueForStyles(node, styles, prevStyles) {
      if (null != styles && "object" !== typeof styles)
        throw Error(
          "The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX."
        );
      styles && Object.freeze(styles);
      node = node.style;
      if (null != prevStyles) {
        if (styles) {
          var expandedUpdates = {};
          if (prevStyles)
            for (var key in prevStyles)
              if (prevStyles.hasOwnProperty(key) && !styles.hasOwnProperty(key))
                for (
                  var longhands = shorthandToLonghand[key] || [key], i = 0;
                  i < longhands.length;
                  i++
                )
                  expandedUpdates[longhands[i]] = key;
          for (var _key in styles)
            if (
              styles.hasOwnProperty(_key) &&
              (!prevStyles || prevStyles[_key] !== styles[_key])
            )
              for (
                key = shorthandToLonghand[_key] || [_key], longhands = 0;
                longhands < key.length;
                longhands++
              )
                expandedUpdates[key[longhands]] = _key;
          _key = {};
          for (var key$jscomp$0 in styles)
            for (
              key = shorthandToLonghand[key$jscomp$0] || [key$jscomp$0],
                longhands = 0;
              longhands < key.length;
              longhands++
            )
              _key[key[longhands]] = key$jscomp$0;
          key$jscomp$0 = {};
          for (var _key2 in expandedUpdates)
            if (
              ((key = expandedUpdates[_key2]),
              (longhands = _key[_key2]) &&
                key !== longhands &&
                ((i = key + "," + longhands), !key$jscomp$0[i]))
            ) {
              key$jscomp$0[i] = !0;
              i = console;
              var value = styles[key];
              i.error.call(
                i,
                "%s a style property during rerender (%s) when a conflicting property is set (%s) can lead to styling bugs. To avoid this, don't mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.",
                null == value || "boolean" === typeof value || "" === value
                  ? "Removing"
                  : "Updating",
                key,
                longhands
              );
            }
        }
        for (var styleName in prevStyles)
          !prevStyles.hasOwnProperty(styleName) ||
            (null != styles && styles.hasOwnProperty(styleName)) ||
            (0 === styleName.indexOf("--")
              ? node.setProperty(styleName, "")
              : "float" === styleName
                ? (node.cssFloat = "")
                : (node[styleName] = ""));
        for (var _styleName in styles)
          (_key2 = styles[_styleName]),
            styles.hasOwnProperty(_styleName) &&
              prevStyles[_styleName] !== _key2 &&
              setValueForStyle(node, _styleName, _key2);
      } else
        for (expandedUpdates in styles)
          styles.hasOwnProperty(expandedUpdates) &&
            setValueForStyle(node, expandedUpdates, styles[expandedUpdates]);
    }
    function isCustomElement(tagName) {
      if (-1 === tagName.indexOf("-")) return !1;
      switch (tagName) {
        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;
      }
    }
    function getAttributeAlias(name) {
      return aliases.get(name) || name;
    }
    function validateProperty$1(tagName, name) {
      if (
        hasOwnProperty.call(warnedProperties$1, name) &&
        warnedProperties$1[name]
      )
        return !0;
      if (rARIACamel$1.test(name)) {
        tagName = "aria-" + name.slice(4).toLowerCase();
        tagName = ariaProperties.hasOwnProperty(tagName) ? tagName : null;
        if (null == tagName)
          return (
            console.error(
              "Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.",
              name
            ),
            (warnedProperties$1[name] = !0)
          );
        if (name !== tagName)
          return (
            console.error(
              "Invalid ARIA attribute `%s`. Did you mean `%s`?",
              name,
              tagName
            ),
            (warnedProperties$1[name] = !0)
          );
      }
      if (rARIA$1.test(name)) {
        tagName = name.toLowerCase();
        tagName = ariaProperties.hasOwnProperty(tagName) ? tagName : null;
        if (null == tagName) return (warnedProperties$1[name] = !0), !1;
        name !== tagName &&
          (console.error(
            "Unknown ARIA attribute `%s`. Did you mean `%s`?",
            name,
            tagName
          ),
          (warnedProperties$1[name] = !0));
      }
      return !0;
    }
    function validateProperties$2(type, props) {
      var invalidProps = [],
        key;
      for (key in props)
        validateProperty$1(type, key) || invalidProps.push(key);
      props = invalidProps
        .map(function (prop) {
          return "`" + prop + "`";
        })
        .join(", ");
      1 === invalidProps.length
        ? console.error(
            "Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props",
            props,
            type
          )
        : 1 < invalidProps.length &&
          console.error(
            "Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props",
            props,
            type
          );
    }
    function validateProperty(tagName, name, value, eventRegistry) {
      if (hasOwnProperty.call(warnedProperties, name) && warnedProperties[name])
        return !0;
      var lowerCasedName = name.toLowerCase();
      if ("onfocusin" === lowerCasedName || "onfocusout" === lowerCasedName)
        return (
          console.error(
            "React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React."
          ),
          (warnedProperties[name] = !0)
        );
      if (
        "function" === typeof value &&
        (("form" === tagName && "action" === name) ||
          ("input" === tagName && "formAction" === name) ||
          ("button" === tagName && "formAction" === name))
      )
        return !0;
      if (null != eventRegistry) {
        tagName = eventRegistry.possibleRegistrationNames;
        if (eventRegistry.registrationNameDependencies.hasOwnProperty(name))
          return !0;
        eventRegistry = tagName.hasOwnProperty(lowerCasedName)
          ? tagName[lowerCasedName]
          : null;
        if (null != eventRegistry)
          return (
            console.error(
              "Invalid event handler property `%s`. Did you mean `%s`?",
              name,
              eventRegistry
            ),
            (warnedProperties[name] = !0)
          );
        if (EVENT_NAME_REGEX.test(name))
          return (
            console.error(
              "Unknown event handler property `%s`. It will be ignored.",
              name
            ),
            (warnedProperties[name] = !0)
          );
      } else if (EVENT_NAME_REGEX.test(name))
        return (
          INVALID_EVENT_NAME_REGEX.test(name) &&
            console.error(
              "Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.",
              name
            ),
          (warnedProperties[name] = !0)
        );
      if (rARIA.test(name) || rARIACamel.test(name)) return !0;
      if ("innerhtml" === lowerCasedName)
        return (
          console.error(
            "Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`."
          ),
          (warnedProperties[name] = !0)
        );
      if ("aria" === lowerCasedName)
        return (
          console.error(
            "The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead."
          ),
          (warnedProperties[name] = !0)
        );
      if (
        "is" === lowerCasedName &&
        null !== value &&
        void 0 !== value &&
        "string" !== typeof value
      )
        return (
          console.error(
            "Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.",
            typeof value
          ),
          (warnedProperties[name] = !0)
        );
      if ("number" === typeof value && isNaN(value))
        return (
          console.error(
            "Received NaN for the `%s` attribute. If this is expected, cast the value to a string.",
            name
          ),
          (warnedProperties[name] = !0)
        );
      if (possibleStandardNames.hasOwnProperty(lowerCasedName)) {
        if (
          ((lowerCasedName = possibleStandardNames[lowerCasedName]),
          lowerCasedName !== name)
        )
          return (
            console.error(
              "Invalid DOM property `%s`. Did you mean `%s`?",
              name,
              lowerCasedName
            ),
            (warnedProperties[name] = !0)
          );
      } else if (name !== lowerCasedName)
        return (
          console.error(
            "React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.",
            name,
            lowerCasedName
          ),
          (warnedProperties[name] = !0)
        );
      switch (name) {
        case "dangerouslySetInnerHTML":
        case "children":
        case "style":
        case "suppressContentEditableWarning":
        case "suppressHydrationWarning":
        case "defaultValue":
        case "defaultChecked":
        case "innerHTML":
        case "ref":
          return !0;
        case "innerText":
        case "textContent":
          return !0;
      }
      switch (typeof value) {
        case "boolean":
          switch (name) {
            case "autoFocus":
            case "checked":
            case "multiple":
            case "muted":
            case "selected":
            case "contentEditable":
            case "spellCheck":
            case "draggable":
            case "value":
            case "autoReverse":
            case "externalResourcesRequired":
            case "focusable":
            case "preserveAlpha":
            case "allowFullScreen":
            case "async":
            case "autoPlay":
            case "controls":
            case "default":
            case "defer":
            case "disabled":
            case "disablePictureInPicture":
            case "disableRemotePlayback":
            case "formNoValidate":
            case "hidden":
            case "loop":
            case "noModule":
            case "noValidate":
            case "open":
            case "playsInline":
            case "readOnly":
            case "required":
            case "reversed":
            case "scoped":
            case "seamless":
            case "itemScope":
            case "capture":
            case "download":
            case "inert":
              return !0;
            default:
              lowerCasedName = name.toLowerCase().slice(0, 5);
              if ("data-" === lowerCasedName || "aria-" === lowerCasedName)
                return !0;
              value
                ? console.error(
                    'Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.',
                    value,
                    name,
                    name,
                    value,
                    name
                  )
                : console.error(
                    'Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.',
                    value,
                    name,
                    name,
                    value,
                    name,
                    name,
                    name
                  );
              return (warnedProperties[name] = !0);
          }
        case "function":
        case "symbol":
          return (warnedProperties[name] = !0), !1;
        case "string":
          if ("false" === value || "true" === value) {
            switch (name) {
              case "checked":
              case "selected":
              case "multiple":
              case "muted":
              case "allowFullScreen":
              case "async":
              case "autoPlay":
              case "controls":
              case "default":
              case "defer":
              case "disabled":
              case "disablePictureInPicture":
              case "disableRemotePlayback":
              case "formNoValidate":
              case "hidden":
              case "loop":
              case "noModule":
              case "noValidate":
              case "open":
              case "playsInline":
              case "readOnly":
              case "required":
              case "reversed":
              case "scoped":
              case "seamless":
              case "itemScope":
              case "inert":
                break;
              default:
                return !0;
            }
            console.error(
              "Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?",
              value,
              name,
              "false" === value
                ? "The browser will interpret it as a truthy value."
                : 'Although this works, it will not work as expected if you pass the string "false".',
              name,
              value
            );
            warnedProperties[name] = !0;
          }
      }
      return !0;
    }
    function warnUnknownProperties(type, props, eventRegistry) {
      var unknownProps = [],
        key;
      for (key in props)
        validateProperty(type, key, props[key], eventRegistry) ||
          unknownProps.push(key);
      props = unknownProps
        .map(function (prop) {
          return "`" + prop + "`";
        })
        .join(", ");
      1 === unknownProps.length
        ? console.error(
            "Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://react.dev/link/attribute-behavior ",
            props,
            type
          )
        : 1 < unknownProps.length &&
          console.error(
            "Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://react.dev/link/attribute-behavior ",
            props,
            type
          );
    }
    function sanitizeURL(url) {
      return isJavaScriptProtocol.test("" + url)
        ? "javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')"
        : url;
    }
    function noop$1() {}
    function getEventTarget(nativeEvent) {
      nativeEvent = nativeEvent.target || nativeEvent.srcElement || window;
      nativeEvent.correspondingUseElement &&
        (nativeEvent = nativeEvent.correspondingUseElement);
      return 3 === nativeEvent.nodeType ? nativeEvent.parentNode : nativeEvent;
    }
    function restoreStateOfTarget(target) {
      var internalInstance = getInstanceFromNode(target);
      if (internalInstance && (target = internalInstance.stateNode)) {
        var props = target[internalPropsKey] || null;
        a: switch (
          ((target = internalInstance.stateNode), internalInstance.type)
        ) {
          case "input":
            updateInput(
              target,
              props.value,
              props.defaultValue,
              props.defaultValue,
              props.checked,
              props.defaultChecked,
              props.type,
              props.name
            );
            internalInstance = props.name;
            if ("radio" === props.type && null != internalInstance) {
              for (props = target; props.parentNode; ) props = props.parentNode;
              checkAttributeStringCoercion(internalInstance, "name");
              props = props.querySelectorAll(
                'input[name="' +
                  escapeSelectorAttributeValueInsideDoubleQuotes(
                    "" + internalInstance
                  ) +
                  '"][type="radio"]'
              );
              for (
                internalInstance = 0;
                internalInstance < props.length;
                internalInstance++
              ) {
                var otherNode = props[internalInstance];
                if (otherNode !== target && otherNode.form === target.form) {
                  var otherProps = otherNode[internalPropsKey] || null;
                  if (!otherProps)
                    throw Error(
                      "ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported."
                    );
                  updateInput(
                    otherNode,
                    otherProps.value,
                    otherProps.defaultValue,
                    otherProps.defaultValue,
                    otherProps.checked,
                    otherProps.defaultChecked,
                    otherProps.type,
                    otherProps.name
                  );
                }
              }
              for (
                internalInstance = 0;
                internalInstance < props.length;
                internalInstance++
              )
                (otherNode = props[internalInstance]),
                  otherNode.form === target.form &&
                    updateValueIfChanged(otherNode);
            }
            break a;
          case "textarea":
            updateTextarea(target, props.value, props.defaultValue);
            break a;
          case "select":
            (internalInstance = props.value),
              null != internalInstance &&
                updateOptions(target, !!props.multiple, internalInstance, !1);
        }
      }
    }
    function batchedUpdates$1(fn, a, b) {
      if (isInsideEventHandler) return fn(a, b);
      isInsideEventHandler = !0;
      try {
        var JSCompiler_inline_result = fn(a);
        return JSCompiler_inline_result;
      } finally {
        if (
          ((isInsideEventHandler = !1),
          null !== restoreTarget || null !== restoreQueue)
        )
          if (
            (flushSyncWork$1(),
            restoreTarget &&
              ((a = restoreTarget),
              (fn = restoreQueue),
              (restoreQueue = restoreTarget = null),
              restoreStateOfTarget(a),
              fn))
          )
            for (a = 0; a < fn.length; a++) restoreStateOfTarget(fn[a]);
      }
    }
    function getListener(inst, registrationName) {
      var stateNode = inst.stateNode;
      if (null === stateNode) return null;
      var props = stateNode[internalPropsKey] || null;
      if (null === props) return null;
      stateNode = props[registrationName];
      a: switch (registrationName) {
        case "onClick":
        case "onClickCapture":
        case "onDoubleClick":
        case "onDoubleClickCapture":
        case "onMouseDown":
        case "onMouseDownCapture":
        case "onMouseMove":
        case "onMouseMoveCapture":
        case "onMouseUp":
        case "onMouseUpCapture":
        case "onMouseEnter":
          (props = !props.disabled) ||
            ((inst = inst.type),
            (props = !(
              "button" === inst ||
              "input" === inst ||
              "select" === inst ||
              "textarea" === inst
            )));
          inst = !props;
          break a;
        default:
          inst = !1;
      }
      if (inst) return null;
      if (stateNode && "function" !== typeof stateNode)
        throw Error(
          "Expected `" +
            registrationName +
            "` listener to be a function, instead got a value of `" +
            typeof stateNode +
            "` type."
        );
      return stateNode;
    }
    function getData() {
      if (fallbackText) return fallbackText;
      var start,
        startValue = startText,
        startLength = startValue.length,
        end,
        endValue = "value" in root ? root.value : root.textContent,
        endLength = endValue.length;
      for (
        start = 0;
        start < startLength && startValue[start] === endValue[start];
        start++
      );
      var minEnd = startLength - start;
      for (
        end = 1;
        end <= minEnd &&
        startValue[startLength - end] === endValue[endLength - end];
        end++
      );
      return (fallbackText = endValue.slice(start, 1 < end ? 1 - end : void 0));
    }
    function getEventCharCode(nativeEvent) {
      var keyCode = nativeEvent.keyCode;
      "charCode" in nativeEvent
        ? ((nativeEvent = nativeEvent.charCode),
          0 === nativeEvent && 13 === keyCode && (nativeEvent = 13))
        : (nativeEvent = keyCode);
      10 === nativeEvent && (nativeEvent = 13);
      return 32 <= nativeEvent || 13 === nativeEvent ? nativeEvent : 0;
    }
    function functionThatReturnsTrue() {
      return !0;
    }
    function functionThatReturnsFalse() {
      return !1;
    }
    function createSyntheticEvent(Interface) {
      function SyntheticBaseEvent(
        reactName,
        reactEventType,
        targetInst,
        nativeEvent,
        nativeEventTarget
      ) {
        this._reactName = reactName;
        this._targetInst = targetInst;
        this.type = reactEventType;
        this.nativeEvent = nativeEvent;
        this.target = nativeEventTarget;
        this.currentTarget = null;
        for (var propName in Interface)
          Interface.hasOwnProperty(propName) &&
            ((reactName = Interface[propName]),
            (this[propName] = reactName
              ? reactName(nativeEvent)
              : nativeEvent[propName]));
        this.isDefaultPrevented = (
          null != nativeEvent.defaultPrevented
            ? nativeEvent.defaultPrevented
            : !1 === nativeEvent.returnValue
        )
          ? functionThatReturnsTrue
          : functionThatReturnsFalse;
        this.isPropagationStopped = functionThatReturnsFalse;
        return this;
      }
      assign(SyntheticBaseEvent.prototype, {
        preventDefault: function () {
          this.defaultPrevented = !0;
          var event = this.nativeEvent;
          event &&
            (event.preventDefault
              ? event.preventDefault()
              : "unknown" !== typeof event.returnValue &&
                (event.returnValue = !1),
            (this.isDefaultPrevented = functionThatReturnsTrue));
        },
        stopPropagation: function () {
          var event = this.nativeEvent;
          event &&
            (event.stopPropagation
              ? event.stopPropagation()
              : "unknown" !== typeof event.cancelBubble &&
                (event.cancelBubble = !0),
            (this.isPropagationStopped = functionThatReturnsTrue));
        },
        persist: function () {},
        isPersistent: functionThatReturnsTrue
      });
      return SyntheticBaseEvent;
    }
    function modifierStateGetter(keyArg) {
      var nativeEvent = this.nativeEvent;
      return nativeEvent.getModifierState
        ? nativeEvent.getModifierState(keyArg)
        : (keyArg = modifierKeyToProp[keyArg])
          ? !!nativeEvent[keyArg]
          : !1;
    }
    function getEventModifierState() {
      return modifierStateGetter;
    }
    function isFallbackCompositionEnd(domEventName, nativeEvent) {
      switch (domEventName) {
        case "keyup":
          return -1 !== END_KEYCODES.indexOf(nativeEvent.keyCode);
        case "keydown":
          return nativeEvent.keyCode !== START_KEYCODE;
        case "keypress":
        case "mousedown":
        case "focusout":
          return !0;
        default:
          return !1;
      }
    }
    function getDataFromCustomEvent(nativeEvent) {
      nativeEvent = nativeEvent.detail;
      return "object" === typeof nativeEvent && "data" in nativeEvent
        ? nativeEvent.data
        : null;
    }
    function getNativeBeforeInputChars(domEventName, nativeEvent) {
      switch (domEventName) {
        case "compositionend":
          return getDataFromCustomEvent(nativeEvent);
        case "keypress":
          if (nativeEvent.which !== SPACEBAR_CODE) return null;
          hasSpaceKeypress = !0;
          return SPACEBAR_CHAR;
        case "textInput":
          return (
            (domEventName = nativeEvent.data),
            domEventName === SPACEBAR_CHAR && hasSpaceKeypress
              ? null
              : domEventName
          );
        default:
          return null;
      }
    }
    function getFallbackBeforeInputChars(domEventName, nativeEvent) {
      if (isComposing)
        return "compositionend" === domEventName ||
          (!canUseCompositionEvent &&
            isFallbackCompositionEnd(domEventName, nativeEvent))
          ? ((domEventName = getData()),
            (fallbackText = startText = root = null),
            (isComposing = !1),
            domEventName)
          : null;
      switch (domEventName) {
        case "paste":
          return null;
        case "keypress":
          if (
            !(
              nativeEvent.ctrlKey ||
              nativeEvent.altKey ||
              nativeEvent.metaKey
            ) ||
            (nativeEvent.ctrlKey && nativeEvent.altKey)
          ) {
            if (nativeEvent.char && 1 < nativeEvent.char.length)
              return nativeEvent.char;
            if (nativeEvent.which)
              return String.fromCharCode(nativeEvent.which);
          }
          return null;
        case "compositionend":
          return useFallbackCompositionData && "ko" !== nativeEvent.locale
            ? null
            : nativeEvent.data;
        default:
          return null;
      }
    }
    function isTextInputElement(elem) {
      var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
      return "input" === nodeName
        ? !!supportedInputTypes[elem.type]
        : "textarea" === nodeName
          ? !0
          : !1;
    }
    function isEventSupported(eventNameSuffix) {
      if (!canUseDOM) return !1;
      eventNameSuffix = "on" + eventNameSuffix;
      var isSupported = eventNameSuffix in document;
      isSupported ||
        ((isSupported = document.createElement("div")),
        isSupported.setAttribute(eventNameSuffix, "return;"),
        (isSupported = "function" === typeof isSupported[eventNameSuffix]));
      return isSupported;
    }
    function createAndAccumulateChangeEvent(
      dispatchQueue,
      inst,
      nativeEvent,
      target
    ) {
      restoreTarget
        ? restoreQueue
          ? restoreQueue.push(target)
          : (restoreQueue = [target])
        : (restoreTarget = target);
      inst = accumulateTwoPhaseListeners(inst, "onChange");
      0 < inst.length &&
        ((nativeEvent = new SyntheticEvent(
          "onChange",
          "change",
          null,
          nativeEvent,
          target
        )),
        dispatchQueue.push({ event: nativeEvent, listeners: inst }));
    }
    function runEventInBatch(dispatchQueue) {
      processDispatchQueue(dispatchQueue, 0);
    }
    function getInstIfValueChanged(targetInst) {
      var targetNode = getNodeFromInstance(targetInst);
      if (updateValueIfChanged(targetNode)) return targetInst;
    }
    function getTargetInstForChangeEvent(domEventName, targetInst) {
      if ("change" === domEventName) return targetInst;
    }
    function stopWatchingForValueChange() {
      activeElement$1 &&
        (activeElement$1.detachEvent("onpropertychange", handlePropertyChange),
        (activeElementInst$1 = activeElement$1 = null));
    }
    function handlePropertyChange(nativeEvent) {
      if (
        "value" === nativeEvent.propertyName &&
        getInstIfValueChanged(activeElementInst$1)
      ) {
        var dispatchQueue = [];
        createAndAccumulateChangeEvent(
          dispatchQueue,
          activeElementInst$1,
          nativeEvent,
          getEventTarget(nativeEvent)
        );
        batchedUpdates$1(runEventInBatch, dispatchQueue);
      }
    }
    function handleEventsForInputEventPolyfill(
      domEventName,
      target,
      targetInst
    ) {
      "focusin" === domEventName
        ? (stopWatchingForValueChange(),
          (activeElement$1 = target),
          (activeElementInst$1 = targetInst),
          activeElement$1.attachEvent("onpropertychange", handlePropertyChange))
        : "focusout" === domEventName && stopWatchingForValueChange();
    }
    function getTargetInstForInputEventPolyfill(domEventName) {
      if (
        "selectionchange" === domEventName ||
        "keyup" === domEventName ||
        "keydown" === domEventName
      )
        return getInstIfValueChanged(activeElementInst$1);
    }
    function getTargetInstForClickEvent(domEventName, targetInst) {
      if ("click" === domEventName) return getInstIfValueChanged(targetInst);
    }
    function getTargetInstForInputOrChangeEvent(domEventName, targetInst) {
      if ("input" === domEventName || "change" === domEventName)
        return getInstIfValueChanged(targetInst);
    }
    function is(x, y) {
      return (x === y && (0 !== x || 1 / x === 1 / y)) || (x !== x && y !== y);
    }
    function shallowEqual(objA, objB) {
      if (objectIs(objA, objB)) return !0;
      if (
        "object" !== typeof objA ||
        null === objA ||
        "object" !== typeof objB ||
        null === objB
      )
        return !1;
      var keysA = Object.keys(objA),
        keysB = Object.keys(objB);
      if (keysA.length !== keysB.length) return !1;
      for (keysB = 0; keysB < keysA.length; keysB++) {
        var currentKey = keysA[keysB];
        if (
          !hasOwnProperty.call(objB, currentKey) ||
          !objectIs(objA[currentKey], objB[currentKey])
        )
          return !1;
      }
      return !0;
    }
    function getLeafNode(node) {
      for (; node && node.firstChild; ) node = node.firstChild;
      return node;
    }
    function getNodeForCharacterOffset(root, offset) {
      var node = getLeafNode(root);
      root = 0;
      for (var nodeEnd; node; ) {
        if (3 === node.nodeType) {
          nodeEnd = root + node.textContent.length;
          if (root <= offset && nodeEnd >= offset)
            return { node: node, offset: offset - root };
          root = nodeEnd;
        }
        a: {
          for (; node; ) {
            if (node.nextSibling) {
              node = node.nextSibling;
              break a;
            }
            node = node.parentNode;
          }
          node = void 0;
        }
        node = getLeafNode(node);
      }
    }
    function containsNode(outerNode, innerNode) {
      return outerNode && innerNode
        ? outerNode === innerNode
          ? !0
          : outerNode && 3 === outerNode.nodeType
            ? !1
            : innerNode && 3 === innerNode.nodeType
              ? containsNode(outerNode, innerNode.parentNode)
              : "contains" in outerNode
                ? outerNode.contains(innerNode)
                : outerNode.compareDocumentPosition
                  ? !!(outerNode.compareDocumentPosition(innerNode) & 16)
                  : !1
        : !1;
    }
    function getActiveElementDeep(containerInfo) {
      containerInfo =
        null != containerInfo &&
        null != containerInfo.ownerDocument &&
        null != containerInfo.ownerDocument.defaultView
          ? containerInfo.ownerDocument.defaultView
          : window;
      for (
        var element = getActiveElement(containerInfo.document);
        element instanceof containerInfo.HTMLIFrameElement;

      ) {
        try {
          var JSCompiler_inline_result =
            "string" === typeof element.contentWindow.location.href;
        } catch (err) {
          JSCompiler_inline_result = !1;
        }
        if (JSCompiler_inline_result) containerInfo = element.contentWindow;
        else break;
        element = getActiveElement(containerInfo.document);
      }
      return element;
    }
    function hasSelectionCapabilities(elem) {
      var nodeName = elem && elem.nodeName && elem.nodeName.toLowerCase();
      return (
        nodeName &&
        (("input" === nodeName &&
          ("text" === elem.type ||
            "search" === elem.type ||
            "tel" === elem.type ||
            "url" === elem.type ||
            "password" === elem.type)) ||
          "textarea" === nodeName ||
          "true" === elem.contentEditable)
      );
    }
    function constructSelectEvent(
      dispatchQueue,
      nativeEvent,
      nativeEventTarget
    ) {
      var doc =
        nativeEventTarget.window === nativeEventTarget
          ? nativeEventTarget.document
          : 9 === nativeEventTarget.nodeType
            ? nativeEventTarget
            : nativeEventTarget.ownerDocument;
      mouseDown ||
        null == activeElement ||
        activeElement !== getActiveElement(doc) ||
        ((doc = activeElement),
        "selectionStart" in doc && hasSelectionCapabilities(doc)
          ? (doc = { start: doc.selectionStart, end: doc.selectionEnd })
          : ((doc = (
              (doc.ownerDocument && doc.ownerDocument.defaultView) ||
              window
            ).getSelection()),
            (doc = {
              anchorNode: doc.anchorNode,
              anchorOffset: doc.anchorOffset,
              focusNode: doc.focusNode,
              focusOffset: doc.focusOffset
            })),
        (lastSelection && shallowEqual(lastSelection, doc)) ||
          ((lastSelection = doc),
          (doc = accumulateTwoPhaseListeners(activeElementInst, "onSelect")),
          0 < doc.length &&
            ((nativeEvent = new SyntheticEvent(
              "onSelect",
              "select",
              null,
              nativeEvent,
              nativeEventTarget
            )),
            dispatchQueue.push({ event: nativeEvent, listeners: doc }),
            (nativeEvent.target = activeElement))));
    }
    function makePrefixMap(styleProp, eventName) {
      var prefixes = {};
      prefixes[styleProp.toLowerCase()] = eventName.toLowerCase();
      prefixes["Webkit" + styleProp] = "webkit" + eventName;
      prefixes["Moz" + styleProp] = "moz" + eventName;
      return prefixes;
    }
    function getVendorPrefixedEventName(eventName) {
      if (prefixedEventNames[eventName]) return prefixedEventNames[eventName];
      if (!vendorPrefixes[eventName]) return eventName;
      var prefixMap = vendorPrefixes[eventName],
        styleProp;
      for (styleProp in prefixMap)
        if (prefixMap.hasOwnProperty(styleProp) && styleProp in style)
          return (prefixedEventNames[eventName] = prefixMap[styleProp]);
      return eventName;
    }
    function registerSimpleEvent(domEventName, reactName) {
      topLevelEventsToReactNames.set(domEventName, reactName);
      registerTwoPhaseEvent(reactName, [domEventName]);
    }
    function getArrayKind(array) {
      for (var kind = EMPTY_ARRAY, i = 0; i < array.length; i++) {
        var value = array[i];
        if ("object" === typeof value && null !== value)
          if (
            isArrayImpl(value) &&
            2 === value.length &&
            "string" === typeof value[0]
          ) {
            if (kind !== EMPTY_ARRAY && kind !== ENTRIES_ARRAY)
              return COMPLEX_ARRAY;
            kind = ENTRIES_ARRAY;
          } else return COMPLEX_ARRAY;
        else {
          if (
            "function" === typeof value ||
            ("string" === typeof value && 50 < value.length) ||
            (kind !== EMPTY_ARRAY && kind !== PRIMITIVE_ARRAY)
          )
            return COMPLEX_ARRAY;
          kind = PRIMITIVE_ARRAY;
        }
      }
      return kind;
    }
    function addObjectToProperties(object, properties, indent, prefix) {
      for (var key in object)
        hasOwnProperty.call(object, key) &&
          "_" !== key[0] &&
          addValueToProperties(key, object[key], properties, indent, prefix);
    }
    function addValueToProperties(
      propertyName,
      value,
      properties,
      indent,
      prefix
    ) {
      switch (typeof value) {
        case "object":
          if (null === value) {
            value = "null";
            break;
          } else {
            if (value.$$typeof === REACT_ELEMENT_TYPE) {
              var typeName = getComponentNameFromType(value.type) || "\u2026",
                key = value.key;
              value = value.props;
              var propsKeys = Object.keys(value),
                propsLength = propsKeys.length;
              if (null == key && 0 === propsLength) {
                value = "<" + typeName + " />";
                break;
              }
              if (
                3 > indent ||
                (1 === propsLength &&
                  "children" === propsKeys[0] &&
                  null == key)
              ) {
                value = "<" + typeName + " \u2026 />";
                break;
              }
              properties.push([
                prefix + "\u00a0\u00a0".repeat(indent) + propertyName,
                "<" + typeName
              ]);
              null !== key &&
                addValueToProperties(
                  "key",
                  key,
                  properties,
                  indent + 1,
                  prefix
                );
              propertyName = !1;
              for (var propKey in value)
                "children" === propKey
                  ? null != value.children &&
                    (!isArrayImpl(value.children) ||
                      0 < value.children.length) &&
                    (propertyName = !0)
                  : hasOwnProperty.call(value, propKey) &&
                    "_" !== propKey[0] &&
                    addValueToProperties(
                      propKey,
                      value[propKey],
                      properties,
                      indent + 1,
                      prefix
                    );
              properties.push([
                "",
                propertyName ? ">\u2026</" + typeName + ">" : "/>"
              ]);
              return;
            }
            typeName = Object.prototype.toString.call(value);
            typeName = typeName.slice(8, typeName.length - 1);
            if ("Array" === typeName)
              if (
                ((propKey = getArrayKind(value)),
                propKey === PRIMITIVE_ARRAY || propKey === EMPTY_ARRAY)
              ) {
                value = JSON.stringify(value);
                break;
              } else if (propKey === ENTRIES_ARRAY) {
                properties.push([
                  prefix + "\u00a0\u00a0".repeat(indent) + propertyName,
                  ""
                ]);
                for (
                  propertyName = 0;
                  propertyName < value.length;
                  propertyName++
                )
                  (typeName = value[propertyName]),
                    addValueToProperties(
                      typeName[0],
                      typeName[1],
                      properties,
                      indent + 1,
                      prefix
                    );
                return;
              }
            if ("Promise" === typeName) {
              if ("fulfilled" === value.status) {
                if (
                  ((typeName = properties.length),
                  addValueToProperties(
                    propertyName,
                    value.value,
                    properties,
                    indent,
                    prefix
                  ),
                  properties.length > typeName)
                ) {
                  properties = properties[typeName];
                  properties[1] =
                    "Promise<" + (properties[1] || "Object") + ">";
                  return;
                }
              } else if (
                "rejected" === value.status &&
                ((typeName = properties.length),
                addValueToProperties(
                  propertyName,
                  value.reason,
                  properties,
                  indent,
                  prefix
                ),
                properties.length > typeName)
              ) {
                properties = properties[typeName];
                properties[1] = "Rejected Promise<" + properties[1] + ">";
                return;
              }
              properties.push([
                "\u00a0\u00a0".repeat(indent) + propertyName,
                "Promise"
              ]);
              return;
            }
            "Object" === typeName &&
              (propKey = Object.getPrototypeOf(value)) &&
              "function" === typeof propKey.constructor &&
              (typeName = propKey.constructor.name);
            properties.push([
              prefix + "\u00a0\u00a0".repeat(indent) + propertyName,
              "Object" === typeName ? (3 > indent ? "" : "\u2026") : typeName
            ]);
            3 > indent &&
              addObjectToProperties(value, properties, indent + 1, prefix);
            return;
          }
        case "function":
          value = "" === value.name ? "() => {}" : value.name + "() {}";
          break;
        case "string":
          value =
            value === OMITTED_PROP_ERROR ? "\u2026" : JSON.stringify(value);
          break;
        case "undefined":
          value = "undefined";
          break;
        case "boolean":
          value = value ? "true" : "false";
          break;
        default:
          value = String(value);
      }
      properties.push([
        prefix + "\u00a0\u00a0".repeat(indent) + propertyName,
        value
      ]);
    }
    function addObjectDiffToProperties(prev, next, properties, indent) {
      var isDeeplyEqual = !0;
      for (key in prev)
        key in next ||
          (properties.push([
            REMOVED + "\u00a0\u00a0".repeat(indent) + key,
            "\u2026"
          ]),
          (isDeeplyEqual = !1));
      for (var _key in next)
        if (_key in prev) {
          var key = prev[_key];
          var nextValue = next[_key];
          if (key !== nextValue) {
            if (0 === indent && "children" === _key)
              (isDeeplyEqual = "\u00a0\u00a0".repeat(indent) + _key),
                properties.push(
                  [REMOVED + isDeeplyEqual, "\u2026"],
                  [ADDED + isDeeplyEqual, "\u2026"]
                );
            else {
              if (!(3 <= indent))
                if (
                  "object" === typeof key &&
                  "object" === typeof nextValue &&
                  null !== key &&
                  null !== nextValue &&
                  key.$$typeof === nextValue.$$typeof
                )
                  if (nextValue.$$typeof === REACT_ELEMENT_TYPE) {
                    if (
                      key.type === nextValue.type &&
                      key.key === nextValue.key
                    ) {
                      key =
                        getComponentNameFromType(nextValue.type) || "\u2026";
                      isDeeplyEqual = "\u00a0\u00a0".repeat(indent) + _key;
                      key = "<" + key + " \u2026 />";
                      properties.push(
                        [REMOVED + isDeeplyEqual, key],
                        [ADDED + isDeeplyEqual, key]
                      );
                      isDeeplyEqual = !1;
                      continue;
                    }
                  } else {
                    var prevKind = Object.prototype.toString.call(key),
                      nextKind = Object.prototype.toString.call(nextValue);
                    if (
                      prevKind === nextKind &&
                      ("[object Object]" === nextKind ||
                        "[object Array]" === nextKind)
                    ) {
                      prevKind = [
                        UNCHANGED + "\u00a0\u00a0".repeat(indent) + _key,
                        "[object Array]" === nextKind ? "Array" : ""
                      ];
                      properties.push(prevKind);
                      nextKind = properties.length;
                      addObjectDiffToProperties(
                        key,
                        nextValue,
                        properties,
                        indent + 1
                      )
                        ? nextKind === properties.length &&
                          (prevKind[1] =
                            "Referentially unequal but deeply equal objects. Consider memoization.")
                        : (isDeeplyEqual = !1);
                      continue;
                    }
                  }
                else if (
                  "function" === typeof key &&
                  "function" === typeof nextValue &&
                  key.name === nextValue.name &&
                  key.length === nextValue.length &&
                  ((prevKind = Function.prototype.toString.call(key)),
                  (nextKind = Function.prototype.toString.call(nextValue)),
                  prevKind === nextKind)
                ) {
                  key =
                    "" === nextValue.name
                      ? "() => {}"
                      : nextValue.name + "() {}";
                  properties.push([
                    UNCHANGED + "\u00a0\u00a0".repeat(indent) + _key,
                    key +
                      " Referentially unequal function closure. Consider memoization."
                  ]);
                  continue;
                }
              addValueToProperties(_key, key, properties, indent, REMOVED);
              addValueToProperties(_key, nextValue, properties, indent, ADDED);
            }
            isDeeplyEqual = !1;
          }
        } else
          properties.push([
            ADDED + "\u00a0\u00a0".repeat(indent) + _key,
            "\u2026"
          ]),
            (isDeeplyEqual = !1);
      return isDeeplyEqual;
    }
    function setCurrentTrackFromLanes(lanes) {
      currentTrack =
        lanes & 63
          ? "Blocking"
          : lanes & 64
            ? "Gesture"
            : lanes & 4194176
              ? "Transition"
              : lanes & 62914560
                ? "Suspense"
                : lanes & 2080374784
                  ? "Idle"
                  : "Other";
    }
    function logComponentTrigger(fiber, startTime, endTime, trigger) {
      supportsUserTiming &&
        ((reusableComponentOptions.start = startTime),
        (reusableComponentOptions.end = endTime),
        (reusableComponentDevToolDetails.color = "warning"),
        (reusableComponentDevToolDetails.tooltipText = trigger),
        (reusableComponentDevToolDetails.properties = null),
        (fiber = fiber._debugTask)
          ? fiber.run(
              performance.measure.bind(
                performance,
                trigger,
                reusableComponentOptions
              )
            )
          : performance.measure(trigger, reusableComponentOptions));
    }
    function logComponentReappeared(fiber, startTime, endTime) {
      logComponentTrigger(fiber, startTime, endTime, "Reconnect");
    }
    function logComponentRender(
      fiber,
      startTime,
      endTime,
      wasHydrated,
      committedLanes
    ) {
      var name = getComponentNameFromFiber(fiber);
      if (null !== name && supportsUserTiming) {
        var alternate = fiber.alternate,
          selfTime = fiber.actualDuration;
        if (null === alternate || alternate.child !== fiber.child)
          for (var child = fiber.child; null !== child; child = child.sibling)
            selfTime -= child.actualDuration;
        wasHydrated =
          0.5 > selfTime
            ? wasHydrated
              ? "tertiary-light"
              : "primary-light"
            : 10 > selfTime
              ? wasHydrated
                ? "tertiary"
                : "primary"
              : 100 > selfTime
                ? wasHydrated
                  ? "tertiary-dark"
                  : "primary-dark"
                : "error";
        var props = fiber.memoizedProps;
        selfTime = fiber._debugTask;
        null !== props &&
        null !== alternate &&
        alternate.memoizedProps !== props
          ? ((child = [resuableChangedPropsEntry]),
            (props = addObjectDiffToProperties(
              alternate.memoizedProps,
              props,
              child,
              0
            )),
            1 < child.length &&
              (props &&
              !alreadyWarnedForDeepEquality &&
              0 === (alternate.lanes & committedLanes) &&
              100 < fiber.actualDuration
                ? ((alreadyWarnedForDeepEquality = !0),
                  (child[0] = reusableDeeplyEqualPropsEntry),
                  (reusableComponentDevToolDetails.color = "warning"),
                  (reusableComponentDevToolDetails.tooltipText =
                    DEEP_EQUALITY_WARNING))
                : ((reusableComponentDevToolDetails.color = wasHydrated),
                  (reusableComponentDevToolDetails.tooltipText = name)),
              (reusableComponentDevToolDetails.properties = child),
              (reusableComponentOptions.start = startTime),
              (reusableComponentOptions.end = endTime),
              null != selfTime
                ? selfTime.run(
                    performance.measure.bind(
                      performance,
                      "\u200b" + name,
                      reusableComponentOptions
                    )
                  )
                : performance.measure(
                    "\u200b" + name,
                    reusableComponentOptions
                  )))
          : null != selfTime
            ? selfTime.run(
                console.timeStamp.bind(
                  console,
                  name,
                  startTime,
                  endTime,
                  COMPONENTS_TRACK,
                  void 0,
                  wasHydrated
                )
              )
            : console.timeStamp(
                name,
                startTime,
                endTime,
                COMPONENTS_TRACK,
                void 0,
                wasHydrated
              );
      }
    }
    function logComponentErrored(fiber, startTime, endTime, errors) {
      if (supportsUserTiming) {
        var name = getComponentNameFromFiber(fiber);
        if (null !== name) {
          for (
            var debugTask = null, properties = [], i = 0;
            i < errors.length;
            i++
          ) {
            var capturedValue = errors[i];
            null == debugTask &&
              null !== capturedValue.source &&
              (debugTask = capturedValue.source._debugTask);
            capturedValue = capturedValue.value;
            properties.push([
              "Error",
              "object" === typeof capturedValue &&
              null !== capturedValue &&
              "string" === typeof capturedValue.message
                ? String(capturedValue.message)
                : String(capturedValue)
            ]);
          }
          null !== fiber.key &&
            addValueToProperties("key", fiber.key, properties, 0, "");
          null !== fiber.memoizedProps &&
            addObjectToProperties(fiber.memoizedProps, properties, 0, "");
          null == debugTask && (debugTask = fiber._debugTask);
          fiber = {
            start: startTime,
            end: endTime,
            detail: {
              devtools: {
                color: "error",
                track: COMPONENTS_TRACK,
                tooltipText:
                  13 === fiber.tag
                    ? "Hydration failed"
                    : "Error boundary caught an error",
                properties: properties
              }
            }
          };
          debugTask
            ? debugTask.run(
                performance.measure.bind(performance, "\u200b" + name, fiber)
              )
            : performance.measure("\u200b" + name, fiber);
        }
      }
    }
    function logComponentEffect(fiber, startTime, endTime, selfTime, errors) {
      if (null !== errors) {
        if (supportsUserTiming) {
          var name = getComponentNameFromFiber(fiber);
          if (null !== name) {
            selfTime = [];
            for (var i = 0; i < errors.length; i++) {
              var error = errors[i].value;
              selfTime.push([
                "Error",
                "object" === typeof error &&
                null !== error &&
                "string" === typeof error.message
                  ? String(error.message)
                  : String(error)
              ]);
            }
            null !== fiber.key &&
              addValueToProperties("key", fiber.key, selfTime, 0, "");
            null !== fiber.memoizedProps &&
              addObjectToProperties(fiber.memoizedProps, selfTime, 0, "");
            startTime = {
              start: startTime,
              end: endTime,
              detail: {
                devtools: {
                  color: "error",
                  track: COMPONENTS_TRACK,
                  tooltipText: "A lifecycle or effect errored",
                  properties: selfTime
                }
              }
            };
            (fiber = fiber._debugTask)
              ? fiber.run(
                  performance.measure.bind(
                    performance,
                    "\u200b" + name,
                    startTime
                  )
                )
              : performance.measure("\u200b" + name, startTime);
          }
        }
      } else
        (name = getComponentNameFromFiber(fiber)),
          null !== name &&
            supportsUserTiming &&
            ((errors =
              1 > selfTime
                ? "secondary-light"
                : 100 > selfTime
                  ? "secondary"
                  : 500 > selfTime
                    ? "secondary-dark"
                    : "error"),
            (fiber = fiber._debugTask)
              ? fiber.run(
                  console.timeStamp.bind(
                    console,
                    name,
                    startTime,
                    endTime,
                    COMPONENTS_TRACK,
                    void 0,
                    errors
                  )
                )
              : console.timeStamp(
                  name,
                  startTime,
                  endTime,
                  COMPONENTS_TRACK,
                  void 0,
                  errors
                ));
    }
    function logRenderPhase(startTime, endTime, lanes, debugTask) {
      if (supportsUserTiming && !(endTime <= startTime)) {
        var color =
          (lanes & 738197653) === lanes ? "tertiary-dark" : "primary-dark";
        lanes =
          (lanes & 536870912) === lanes
            ? "Prepared"
            : (lanes & 201326741) === lanes
              ? "Hydrated"
              : "Render";
        debugTask
          ? debugTask.run(
              console.timeStamp.bind(
                console,
                lanes,
                startTime,
                endTime,
                currentTrack,
                LANES_TRACK_GROUP,
                color
              )
            )
          : console.timeStamp(
              lanes,
              startTime,
              endTime,
              currentTrack,
              LANES_TRACK_GROUP,
              color
            );
      }
    }
    function logSuspendedRenderPhase(startTime, endTime, lanes, debugTask) {
      !supportsUserTiming ||
        endTime <= startTime ||
        ((lanes =
          (lanes & 738197653) === lanes ? "tertiary-dark" : "primary-dark"),
        debugTask
          ? debugTask.run(
              console.timeStamp.bind(
                console,
                "Prewarm",
                startTime,
                endTime,
                currentTrack,
                LANES_TRACK_GROUP,
                lanes
              )
            )
          : console.timeStamp(
              "Prewarm",
              startTime,
              endTime,
              currentTrack,
              LANES_TRACK_GROUP,
              lanes
            ));
    }
    function logSuspendedWithDelayPhase(startTime, endTime, lanes, debugTask) {
      !supportsUserTiming ||
        endTime <= startTime ||
        ((lanes =
          (lanes & 738197653) === lanes ? "tertiary-dark" : "primary-dark"),
        debugTask
          ? debugTask.run(
              console.timeStamp.bind(
                console,
                "Suspended",
                startTime,
                endTime,
                currentTrack,
                LANES_TRACK_GROUP,
                lanes
              )
            )
          : console.timeStamp(
              "Suspended",
              startTime,
              endTime,
              currentTrack,
              LANES_TRACK_GROUP,
              lanes
            ));
    }
    function logRecoveredRenderPhase(
      startTime,
      endTime,
      lanes,
      recoverableErrors,
      hydrationFailed,
      debugTask
    ) {
      if (supportsUserTiming && !(endTime <= startTime)) {
        lanes = [];
        for (var i = 0; i < recoverableErrors.length; i++) {
          var error = recoverableErrors[i].value;
          lanes.push([
            "Recoverable Error",
            "object" === typeof error &&
            null !== error &&
            "string" === typeof error.message
              ? String(error.message)
              : String(error)
          ]);
        }
        startTime = {
          start: startTime,
          end: endTime,
          detail: {
            devtools: {
              color: "primary-dark",
              track: currentTrack,
              trackGroup: LANES_TRACK_GROUP,
              tooltipText: hydrationFailed
                ? "Hydration Failed"
                : "Recovered after Error",
              properties: lanes
            }
          }
        };
        debugTask
          ? debugTask.run(
              performance.measure.bind(performance, "Recovered", startTime)
            )
          : performance.measure("Recovered", startTime);
      }
    }
    function logErroredRenderPhase(startTime, endTime, lanes, debugTask) {
      !supportsUserTiming ||
        endTime <= startTime ||
        (debugTask
          ? debugTask.run(
              console.timeStamp.bind(
                console,
                "Errored",
                startTime,
                endTime,
                currentTrack,
                LANES_TRACK_GROUP,
                "error"
              )
            )
          : console.timeStamp(
              "Errored",
              startTime,
              endTime,
              currentTrack,
              LANES_TRACK_GROUP,
              "error"
            ));
    }
    function logSuspendedCommitPhase(startTime, endTime, reason, debugTask) {
      !supportsUserTiming ||
        endTime <= startTime ||
        (debugTask
          ? debugTask.run(
              console.timeStamp.bind(
                console,
                reason,
                startTime,
                endTime,
                currentTrack,
                LANES_TRACK_GROUP,
                "secondary-light"
              )
            )
          : console.timeStamp(
              reason,
              startTime,
              endTime,
              currentTrack,
              LANES_TRACK_GROUP,
              "secondary-light"
            ));
    }
    function logCommitErrored(startTime, endTime, errors, passive, debugTask) {
      if (supportsUserTiming && !(endTime <= startTime)) {
        for (var properties = [], i = 0; i < errors.length; i++) {
          var error = errors[i].value;
          properties.push([
            "Error",
            "object" === typeof error &&
            null !== error &&
            "string" === typeof error.message
              ? String(error.message)
              : String(error)
          ]);
        }
        startTime = {
          start: startTime,
          end: endTime,
          detail: {
            devtools: {
              color: "error",
              track: currentTrack,
              trackGroup: LANES_TRACK_GROUP,
              tooltipText: passive
                ? "Remaining Effects Errored"
                : "Commit Errored",
              properties: properties
            }
          }
        };
        debugTask
          ? debugTask.run(
              performance.measure.bind(performance, "Errored", startTime)
            )
          : performance.measure("Errored", startTime);
      }
    }
    function logAnimatingPhase(startTime, endTime, debugTask) {
      !supportsUserTiming ||
        endTime <= startTime ||
        (debugTask
          ? debugTask.run(
              console.timeStamp.bind(
                console,
                "Animating",
                startTime,
                endTime,
                currentTrack,
                LANES_TRACK_GROUP,
                "secondary-dark"
              )
            )
          : console.timeStamp(
              "Animating",
              startTime,
              endTime,
              currentTrack,
              LANES_TRACK_GROUP,
              "secondary-dark"
            ));
    }
    function finishQueueingConcurrentUpdates() {
      for (
        var endIndex = concurrentQueuesIndex,
          i = (concurrentlyUpdatedLanes = concurrentQueuesIndex = 0);
        i < endIndex;

      ) {
        var fiber = concurrentQueues[i];
        concurrentQueues[i++] = null;
        var queue = concurrentQueues[i];
        concurrentQueues[i++] = null;
        var update = concurrentQueues[i];
        concurrentQueues[i++] = null;
        var lane = concurrentQueues[i];
        concurrentQueues[i++] = null;
        if (null !== queue && null !== update) {
          var pending = queue.pending;
          null === pending
            ? (update.next = update)
            : ((update.next = pending.next), (pending.next = update));
          queue.pending = update;
        }
        0 !== lane && markUpdateLaneFromFiberToRoot(fiber, update, lane);
      }
    }
    function enqueueUpdate$1(fiber, queue, update, lane) {
      concurrentQueues[concurrentQueuesIndex++] = fiber;
      concurrentQueues[concurrentQueuesIndex++] = queue;
      concurrentQueues[concurrentQueuesIndex++] = update;
      concurrentQueues[concurrentQueuesIndex++] = lane;
      concurrentlyUpdatedLanes |= lane;
      fiber.lanes |= lane;
      fiber = fiber.alternate;
      null !== fiber && (fiber.lanes |= lane);
    }
    function enqueueConcurrentHookUpdate(fiber, queue, update, lane) {
      enqueueUpdate$1(fiber, queue, update, lane);
      return getRootForUpdatedFiber(fiber);
    }
    function enqueueConcurrentRenderForLane(fiber, lane) {
      enqueueUpdate$1(fiber, null, null, lane);
      return getRootForUpdatedFiber(fiber);
    }
    function markUpdateLaneFromFiberToRoot(sourceFiber, update, lane) {
      sourceFiber.lanes |= lane;
      var alternate = sourceFiber.alternate;
      null !== alternate && (alternate.lanes |= lane);
      for (var isHidden = !1, parent = sourceFiber.return; null !== parent; )
        (parent.childLanes |= lane),
          (alternate = parent.alternate),
          null !== alternate && (alternate.childLanes |= lane),
          22 === parent.tag &&
            ((sourceFiber = parent.stateNode),
            null === sourceFiber ||
              sourceFiber._visibility & OffscreenVisible ||
              (isHidden = !0)),
          (sourceFiber = parent),
          (parent = parent.return);
      return 3 === sourceFiber.tag
        ? ((parent = sourceFiber.stateNode),
          isHidden &&
            null !== update &&
            ((isHidden = 31 - clz32(lane)),
            (sourceFiber = parent.hiddenUpdates),
            (alternate = sourceFiber[isHidden]),
            null === alternate
              ? (sourceFiber[isHidden] = [update])
              : alternate.push(update),
            (update.lane = lane | 536870912)),
          parent)
        : null;
    }
    function getRootForUpdatedFiber(sourceFiber) {
      if (nestedUpdateCount > NESTED_UPDATE_LIMIT)
        throw (
          ((nestedPassiveUpdateCount = nestedUpdateCount = 0),
          (rootWithPassiveNestedUpdates = rootWithNestedUpdates = null),
          Error(
            "Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops."
          ))
        );
      nestedPassiveUpdateCount > NESTED_PASSIVE_UPDATE_LIMIT &&
        ((nestedPassiveUpdateCount = 0),
        (rootWithPassiveNestedUpdates = null),
        console.error(
          "Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render."
        ));
      null === sourceFiber.alternate &&
        0 !== (sourceFiber.flags & 4098) &&
        warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber);
      for (var node = sourceFiber, parent = node.return; null !== parent; )
        null === node.alternate &&
          0 !== (node.flags & 4098) &&
          warnAboutUpdateOnNotYetMountedFiberInDEV(sourceFiber),
          (node = parent),
          (parent = node.return);
      return 3 === node.tag ? node.stateNode : null;
    }
    function resolveFunctionForHotReloading(type) {
      if (null === resolveFamily) return type;
      var family = resolveFamily(type);
      return void 0 === family ? type : family.current;
    }
    function resolveForwardRefForHotReloading(type) {
      if (null === resolveFamily) return type;
      var family = resolveFamily(type);
      return void 0 === family
        ? null !== type &&
          void 0 !== type &&
          "function" === typeof type.render &&
          ((family = resolveFunctionForHotReloading(type.render)),
          type.render !== family)
          ? ((family = { $$typeof: REACT_FORWARD_REF_TYPE, render: family }),
            void 0 !== type.displayName &&
              (family.displayName = type.displayName),
            family)
          : type
        : family.current;
    }
    function isCompatibleFamilyForHotReloading(fiber, element) {
      if (null === resolveFamily) return !1;
      var prevType = fiber.elementType;
      element = element.type;
      var needsCompareFamilies = !1,
        $$typeofNextType =
          "object" === typeof element && null !== element
            ? element.$$typeof
            : null;
      switch (fiber.tag) {
        case 1:
          "function" === typeof element && (needsCompareFamilies = !0);
          break;
        case 0:
          "function" === typeof element
            ? (needsCompareFamilies = !0)
            : $$typeofNextType === REACT_LAZY_TYPE &&
              (needsCompareFamilies = !0);
          break;
        case 11:
          $$typeofNextType === REACT_FORWARD_REF_TYPE
            ? (needsCompareFamilies = !0)
            : $$typeofNextType === REACT_LAZY_TYPE &&
              (needsCompareFamilies = !0);
          break;
        case 14:
        case 15:
          $$typeofNextType === REACT_MEMO_TYPE
            ? (needsCompareFamilies = !0)
            : $$typeofNextType === REACT_LAZY_TYPE &&
              (needsCompareFamilies = !0);
          break;
        default:
          return !1;
      }
      return needsCompareFamilies &&
        ((fiber = resolveFamily(prevType)),
        void 0 !== fiber && fiber === resolveFamily(element))
        ? !0
        : !1;
    }
    function markFailedErrorBoundaryForHotReloading(fiber) {
      null !== resolveFamily &&
        "function" === typeof WeakSet &&
        (null === failedBoundaries && (failedBoundaries = new WeakSet()),
        failedBoundaries.add(fiber));
    }
    function scheduleFibersWithFamiliesRecursively(
      fiber,
      updatedFamilies,
      staleFamilies
    ) {
      do {
        var _fiber = fiber,
          alternate = _fiber.alternate,
          child = _fiber.child,
          sibling = _fiber.sibling,
          tag = _fiber.tag;
        _fiber = _fiber.type;
        var candidateType = null;
        switch (tag) {
          case 0:
          case 15:
          case 1:
            candidateType = _fiber;
            break;
          case 11:
            candidateType = _fiber.render;
        }
        if (null === resolveFamily)
          throw Error("Expected resolveFamily to be set during hot reload.");
        var needsRender = !1;
        _fiber = !1;
        null !== candidateType &&
          ((candidateType = resolveFamily(candidateType)),
          void 0 !== candidateType &&
            (staleFamilies.has(candidateType)
              ? (_fiber = !0)
              : updatedFamilies.has(candidateType) &&
                (1 === tag ? (_fiber = !0) : (needsRender = !0))));
        null !== failedBoundaries &&
          (failedBoundaries.has(fiber) ||
            (null !== alternate && failedBoundaries.has(alternate))) &&
          (_fiber = !0);
        _fiber && (fiber._debugNeedsRemount = !0);
        if (_fiber || needsRender)
          (alternate = enqueueConcurrentRenderForLane(fiber, 2)),
            null !== alternate && scheduleUpdateOnFiber(alternate, fiber, 2);
        null === child ||
          _fiber ||
          scheduleFibersWithFamiliesRecursively(
            child,
            updatedFamilies,
            staleFamilies
          );
        if (null === sibling) break;
        fiber = sibling;
      } while (1);
    }
    function FiberNode(tag, pendingProps, key, mode) {
      this.tag = tag;
      this.key = key;
      this.sibling =
        this.child =
        this.return =
        this.stateNode =
        this.type =
        this.elementType =
          null;
      this.index = 0;
      this.refCleanup = this.ref = null;
      this.pendingProps = pendingProps;
      this.dependencies =
        this.memoizedState =
        this.updateQueue =
        this.memoizedProps =
          null;
      this.mode = mode;
      this.subtreeFlags = this.flags = 0;
      this.deletions = null;
      this.childLanes = this.lanes = 0;
      this.alternate = null;
      this.actualDuration = -0;
      this.actualStartTime = -1.1;
      this.treeBaseDuration = this.selfBaseDuration = -0;
      this._debugTask =
        this._debugStack =
        this._debugOwner =
        this._debugInfo =
          null;
      this._debugNeedsRemount = !1;
      this._debugHookTypes = null;
      hasBadMapPolyfill ||
        "function" !== typeof Object.preventExtensions ||
        Object.preventExtensions(this);
    }
    function shouldConstruct(Component) {
      Component = Component.prototype;
      return !(!Component || !Component.isReactComponent);
    }
    function createWorkInProgress(current, pendingProps) {
      var workInProgress = current.alternate;
      null === workInProgress
        ? ((workInProgress = createFiber(
            current.tag,
            pendingProps,
            current.key,
            current.mode
          )),
          (workInProgress.elementType = current.elementType),
          (workInProgress.type = current.type),
          (workInProgress.stateNode = current.stateNode),
          (workInProgress._debugOwner = current._debugOwner),
          (workInProgress._debugStack = current._debugStack),
          (workInProgress._debugTask = current._debugTask),
          (workInProgress._debugHookTypes = current._debugHookTypes),
          (workInProgress.alternate = current),
          (current.alternate = workInProgress))
        : ((workInProgress.pendingProps = pendingProps),
          (workInProgress.type = current.type),
          (workInProgress.flags = 0),
          (workInProgress.subtreeFlags = 0),
          (workInProgress.deletions = null),
          (workInProgress.actualDuration = -0),
          (workInProgress.actualStartTime = -1.1));
      workInProgress.flags = current.flags & 65011712;
      workInProgress.childLanes = current.childLanes;
      workInProgress.lanes = current.lanes;
      workInProgress.child = current.child;
      workInProgress.memoizedProps = current.memoizedProps;
      workInProgress.memoizedState = current.memoizedState;
      workInProgress.updateQueue = current.updateQueue;
      pendingProps = current.dependencies;
      workInProgress.dependencies =
        null === pendingProps
          ? null
          : {
              lanes: pendingProps.lanes,
              firstContext: pendingProps.firstContext,
              _debugThenableState: pendingProps._debugThenableState
            };
      workInProgress.sibling = current.sibling;
      workInProgress.index = current.index;
      workInProgress.ref = current.ref;
      workInProgress.refCleanup = current.refCleanup;
      workInProgress.selfBaseDuration = current.selfBaseDuration;
      workInProgress.treeBaseDuration = current.treeBaseDuration;
      workInProgress._debugInfo = current._debugInfo;
      workInProgress._debugNeedsRemount = current._debugNeedsRemount;
      switch (workInProgress.tag) {
        case 0:
        case 15:
          workInProgress.type = resolveFunctionForHotReloading(current.type);
          break;
        case 1:
          workInProgress.type = resolveFunctionForHotReloading(current.type);
          break;
        case 11:
          workInProgress.type = resolveForwardRefForHotReloading(current.type);
      }
      return workInProgress;
    }
    function resetWorkInProgress(workInProgress, renderLanes) {
      workInProgress.flags &= 65011714;
      var current = workInProgress.alternate;
      null === current
        ? ((workInProgress.childLanes = 0),
          (workInProgress.lanes = renderLanes),
          (workInProgress.child = null),
          (workInProgress.subtreeFlags = 0),
          (workInProgress.memoizedProps = null),
          (workInProgress.memoizedState = null),
          (workInProgress.updateQueue = null),
          (workInProgress.dependencies = null),
          (workInProgress.stateNode = null),
          (workInProgress.selfBaseDuration = 0),
          (workInProgress.treeBaseDuration = 0))
        : ((workInProgress.childLanes = current.childLanes),
          (workInProgress.lanes = current.lanes),
          (workInProgress.child = current.child),
          (workInProgress.subtreeFlags = 0),
          (workInProgress.deletions = null),
          (workInProgress.memoizedProps = current.memoizedProps),
          (workInProgress.memoizedState = current.memoizedState),
          (workInProgress.updateQueue = current.updateQueue),
          (workInProgress.type = current.type),
          (renderLanes = current.dependencies),
          (workInProgress.dependencies =
            null === renderLanes
              ? null
              : {
                  lanes: renderLanes.lanes,
                  firstContext: renderLanes.firstContext,
                  _debugThenableState: renderLanes._debugThenableState
                }),
          (workInProgress.selfBaseDuration = current.selfBaseDuration),
          (workInProgress.treeBaseDuration = current.treeBaseDuration));
      return workInProgress;
    }
    function createFiberFromTypeAndProps(
      type,
      key,
      pendingProps,
      owner,
      mode,
      lanes
    ) {
      var fiberTag = 0,
        resolvedType = type;
      if ("function" === typeof type)
        shouldConstruct(type) && (fiberTag = 1),
          (resolvedType = resolveFunctionForHotReloading(resolvedType));
      else if ("string" === typeof type)
        (fiberTag = getHostContext()),
          (fiberTag = isHostHoistableType(type, pendingProps, fiberTag)
            ? 26
            : "html" === type || "head" === type || "body" === type
              ? 27
              : 5);
      else
        a: switch (type) {
          case REACT_ACTIVITY_TYPE:
            return (
              (key = createFiber(31, pendingProps, key, mode)),
              (key.elementType = REACT_ACTIVITY_TYPE),
              (key.lanes = lanes),
              key
            );
          case REACT_FRAGMENT_TYPE:
            return createFiberFromFragment(
              pendingProps.children,
              mode,
              lanes,
              key
            );
          case REACT_STRICT_MODE_TYPE:
            fiberTag = 8;
            mode |= StrictLegacyMode;
            mode |= StrictEffectsMode;
            break;
          case REACT_PROFILER_TYPE:
            return (
              (type = pendingProps),
              (owner = mode),
              "string" !== typeof type.id &&
                console.error(
                  'Profiler must specify an "id" of type `string` as a prop. Received the type `%s` instead.',
                  typeof type.id
                ),
              (key = createFiber(12, type, key, owner | ProfileMode)),
              (key.elementType = REACT_PROFILER_TYPE),
              (key.lanes = lanes),
              (key.stateNode = { effectDuration: 0, passiveEffectDuration: 0 }),
              key
            );
          case REACT_SUSPENSE_TYPE:
            return (
              (key = createFiber(13, pendingProps, key, mode)),
              (key.elementType = REACT_SUSPENSE_TYPE),
              (key.lanes = lanes),
              key
            );
          case REACT_SUSPENSE_LIST_TYPE:
            return (
              (key = createFiber(19, pendingProps, key, mode)),
              (key.elementType = REACT_SUSPENSE_LIST_TYPE),
              (key.lanes = lanes),
              key
            );
          default:
            if ("object" === typeof type && null !== type)
              switch (type.$$typeof) {
                case REACT_CONTEXT_TYPE:
                  fiberTag = 10;
                  break a;
                case REACT_CONSUMER_TYPE:
                  fiberTag = 9;
                  break a;
                case REACT_FORWARD_REF_TYPE:
                  fiberTag = 11;
                  resolvedType = resolveForwardRefForHotReloading(resolvedType);
                  break a;
                case REACT_MEMO_TYPE:
                  fiberTag = 14;
                  break a;
                case REACT_LAZY_TYPE:
                  fiberTag = 16;
                  resolvedType = null;
                  break a;
              }
            resolvedType = "";
            if (
              void 0 === type ||
              ("object" === typeof type &&
                null !== type &&
                0 === Object.keys(type).length)
            )
              resolvedType +=
                " You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.";
            null === type
              ? (pendingProps = "null")
              : isArrayImpl(type)
                ? (pendingProps = "array")
                : void 0 !== type && type.$$typeof === REACT_ELEMENT_TYPE
                  ? ((pendingProps =
                      "<" +
                      (getComponentNameFromType(type.type) || "Unknown") +
                      " />"),
                    (resolvedType =
                      " Did you accidentally export a JSX literal instead of a component?"))
                  : (pendingProps = typeof type);
            (fiberTag = owner ? getComponentNameFromOwner(owner) : null) &&
              (resolvedType +=
                "\n\nCheck the render method of `" + fiberTag + "`.");
            fiberTag = 29;
            pendingProps = Error(
              "Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: " +
                (pendingProps + "." + resolvedType)
            );
            resolvedType = null;
        }
      key = createFiber(fiberTag, pendingProps, key, mode);
      key.elementType = type;
      key.type = resolvedType;
      key.lanes = lanes;
      key._debugOwner = owner;
      return key;
    }
    function createFiberFromElement(element, mode, lanes) {
      mode = createFiberFromTypeAndProps(
        element.type,
        element.key,
        element.props,
        element._owner,
        mode,
        lanes
      );
      mode._debugOwner = element._owner;
      mode._debugStack = element._debugStack;
      mode._debugTask = element._debugTask;
      return mode;
    }
    function createFiberFromFragment(elements, mode, lanes, key) {
      elements = createFiber(7, elements, key, mode);
      elements.lanes = lanes;
      return elements;
    }
    function createFiberFromText(content, mode, lanes) {
      content = createFiber(6, content, null, mode);
      content.lanes = lanes;
      return content;
    }
    function createFiberFromDehydratedFragment(dehydratedNode) {
      var fiber = createFiber(18, null, null, NoMode);
      fiber.stateNode = dehydratedNode;
      return fiber;
    }
    function createFiberFromPortal(portal, mode, lanes) {
      mode = createFiber(
        4,
        null !== portal.children ? portal.children : [],
        portal.key,
        mode
      );
      mode.lanes = lanes;
      mode.stateNode = {
        containerInfo: portal.containerInfo,
        pendingChildren: null,
        implementation: portal.implementation
      };
      return mode;
    }
    function createCapturedValueAtFiber(value, source) {
      if ("object" === typeof value && null !== value) {
        var existing = CapturedStacks.get(value);
        if (void 0 !== existing) return existing;
        source = {
          value: value,
          source: source,
          stack: getStackByFiberInDevAndProd(source)
        };
        CapturedStacks.set(value, source);
        return source;
      }
      return {
        value: value,
        source: source,
        stack: getStackByFiberInDevAndProd(source)
      };
    }
    function pushTreeFork(workInProgress, totalChildren) {
      warnIfNotHydrating();
      forkStack[forkStackIndex++] = treeForkCount;
      forkStack[forkStackIndex++] = treeForkProvider;
      treeForkProvider = workInProgress;
      treeForkCount = totalChildren;
    }
    function pushTreeId(workInProgress, totalChildren, index) {
      warnIfNotHydrating();
      idStack[idStackIndex++] = treeContextId;
      idStack[idStackIndex++] = treeContextOverflow;
      idStack[idStackIndex++] = treeContextProvider;
      treeContextProvider = workInProgress;
      var baseIdWithLeadingBit = treeContextId;
      workInProgress = treeContextOverflow;
      var baseLength = 32 - clz32(baseIdWithLeadingBit) - 1;
      baseIdWithLeadingBit &= ~(1 << baseLength);
      index += 1;
      var length = 32 - clz32(totalChildren) + baseLength;
      if (30 < length) {
        var numberOfOverflowBits = baseLength - (baseLength % 5);
        length = (
          baseIdWithLeadingBit &
          ((1 << numberOfOverflowBits) - 1)
        ).toString(32);
        baseIdWithLeadingBit >>= numberOfOverflowBits;
        baseLength -= numberOfOverflowBits;
        treeContextId =
          (1 << (32 - clz32(totalChildren) + baseLength)) |
          (index << baseLength) |
          baseIdWithLeadingBit;
        treeContextOverflow = length + workInProgress;
      } else
        (treeContextId =
          (1 << length) | (index << baseLength) | baseIdWithLeadingBit),
          (treeContextOverflow = workInProgress);
    }
    function pushMaterializedTreeId(workInProgress) {
      warnIfNotHydrating();
      null !== workInProgress.return &&
        (pushTreeFork(workInProgress, 1), pushTreeId(workInProgress, 1, 0));
    }
    function popTreeContext(workInProgress) {
      for (; workInProgress === treeForkProvider; )
        (treeForkProvider = forkStack[--forkStackIndex]),
          (forkStack[forkStackIndex] = null),
          (treeForkCount = forkStack[--forkStackIndex]),
          (forkStack[forkStackIndex] = null);
      for (; workInProgress === treeContextProvider; )
        (treeContextProvider = idStack[--idStackIndex]),
          (idStack[idStackIndex] = null),
          (treeContextOverflow = idStack[--idStackIndex]),
          (idStack[idStackIndex] = null),
          (treeContextId = idStack[--idStackIndex]),
          (idStack[idStackIndex] = null);
    }
    function getSuspendedTreeContext() {
      warnIfNotHydrating();
      return null !== treeContextProvider
        ? { id: treeContextId, overflow: treeContextOverflow }
        : null;
    }
    function restoreSuspendedTreeContext(workInProgress, suspendedContext) {
      warnIfNotHydrating();
      idStack[idStackIndex++] = treeContextId;
      idStack[idStackIndex++] = treeContextOverflow;
      idStack[idStackIndex++] = treeContextProvider;
      treeContextId = suspendedContext.id;
      treeContextOverflow = suspendedContext.overflow;
      treeContextProvider = workInProgress;
    }
    function warnIfNotHydrating() {
      isHydrating ||
        console.error(
          "Expected to be hydrating. This is a bug in React. Please file an issue."
        );
    }
    function buildHydrationDiffNode(fiber, distanceFromLeaf) {
      if (null === fiber.return) {
        if (null === hydrationDiffRootDEV)
          hydrationDiffRootDEV = {
            fiber: fiber,
            children: [],
            serverProps: void 0,
            serverTail: [],
            distanceFromLeaf: distanceFromLeaf
          };
        else {
          if (hydrationDiffRootDEV.fiber !== fiber)
            throw Error(
              "Saw multiple hydration diff roots in a pass. This is a bug in React."
            );
          hydrationDiffRootDEV.distanceFromLeaf > distanceFromLeaf &&
            (hydrationDiffRootDEV.distanceFromLeaf = distanceFromLeaf);
        }
        return hydrationDiffRootDEV;
      }
      var siblings = buildHydrationDiffNode(
        fiber.return,
        distanceFromLeaf + 1
      ).children;
      if (0 < siblings.length && siblings[siblings.length - 1].fiber === fiber)
        return (
          (siblings = siblings[siblings.length - 1]),
          siblings.distanceFromLeaf > distanceFromLeaf &&
            (siblings.distanceFromLeaf = distanceFromLeaf),
          siblings
        );
      distanceFromLeaf = {
        fiber: fiber,
        children: [],
        serverProps: void 0,
        serverTail: [],
        distanceFromLeaf: distanceFromLeaf
      };
      siblings.push(distanceFromLeaf);
      return distanceFromLeaf;
    }
    function warnIfHydrating() {
      isHydrating &&
        console.error(
          "We should not be hydrating here. This is a bug in React. Please file a bug."
        );
    }
    function warnNonHydratedInstance(fiber, rejectedCandidate) {
      didSuspendOrErrorDEV ||
        ((fiber = buildHydrationDiffNode(fiber, 0)),
        (fiber.serverProps = null),
        null !== rejectedCandidate &&
          ((rejectedCandidate =
            describeHydratableInstanceForDevWarnings(rejectedCandidate)),
          fiber.serverTail.push(rejectedCandidate)));
    }
    function throwOnHydrationMismatch(fiber) {
      var fromText =
          1 < arguments.length && void 0 !== arguments[1] ? arguments[1] : !1,
        diff = "",
        diffRoot = hydrationDiffRootDEV;
      null !== diffRoot &&
        ((hydrationDiffRootDEV = null), (diff = describeDiff(diffRoot)));
      queueHydrationError(
        createCapturedValueAtFiber(
          Error(
            "Hydration failed because the server rendered " +
              (fromText ? "text" : "HTML") +
              " didn't match the client. As a result this tree will be regenerated on the client. This can happen if a SSR-ed Client Component used:\n\n- A server/client branch `if (typeof window !== 'undefined')`.\n- Variable input such as `Date.now()` or `Math.random()` which changes each time it's called.\n- Date formatting in a user's locale which doesn't match the server.\n- External changing data without sending a snapshot of it along with the HTML.\n- Invalid HTML tag nesting.\n\nIt can also happen if the client has a browser extension installed which messes with the HTML before React loaded.\n\nhttps://react.dev/link/hydration-mismatch" +
              diff
          ),
          fiber
        )
      );
      throw HydrationMismatchException;
    }
    function prepareToHydrateHostInstance(fiber) {
      var didHydrate = fiber.stateNode;
      var type = fiber.type,
        props = fiber.memoizedProps;
      didHydrate[internalInstanceKey] = fiber;
      didHydrate[internalPropsKey] = props;
      validatePropertiesInDevelopment(type, props);
      switch (type) {
        case "dialog":
          listenToNonDelegatedEvent("cancel", didHydrate);
          listenToNonDelegatedEvent("close", didHydrate);
          break;
        case "iframe":
        case "object":
        case "embed":
          listenToNonDelegatedEvent("load", didHydrate);
          break;
        case "video":
        case "audio":
          for (type = 0; type < mediaEventTypes.length; type++)
            listenToNonDelegatedEvent(mediaEventTypes[type], didHydrate);
          break;
        case "source":
          listenToNonDelegatedEvent("error", didHydrate);
          break;
        case "img":
        case "image":
        case "link":
          listenToNonDelegatedEvent("error", didHydrate);
          listenToNonDelegatedEvent("load", didHydrate);
          break;
        case "details":
          listenToNonDelegatedEvent("toggle", didHydrate);
          break;
        case "input":
          checkControlledValueProps("input", props);
          listenToNonDelegatedEvent("invalid", didHydrate);
          validateInputProps(didHydrate, props);
          initInput(
            didHydrate,
            props.value,
            props.defaultValue,
            props.checked,
            props.defaultChecked,
            props.type,
            props.name,
            !0
          );
          break;
        case "option":
          validateOptionProps(didHydrate, props);
          break;
        case "select":
          checkControlledValueProps("select", props);
          listenToNonDelegatedEvent("invalid", didHydrate);
          validateSelectProps(didHydrate, props);
          break;
        case "textarea":
          checkControlledValueProps("textarea", props),
            listenToNonDelegatedEvent("invalid", didHydrate),
            validateTextareaProps(didHydrate, props),
            initTextarea(
              didHydrate,
              props.value,
              props.defaultValue,
              props.children
            );
      }
      type = props.children;
      ("string" !== typeof type &&
        "number" !== typeof type &&
        "bigint" !== typeof type) ||
      didHydrate.textContent === "" + type ||
      !0 === props.suppressHydrationWarning ||
      checkForUnmatchedText(didHydrate.textContent, type)
        ? (null != props.popover &&
            (listenToNonDelegatedEvent("beforetoggle", didHydrate),
            listenToNonDelegatedEvent("toggle", didHydrate)),
          null != props.onScroll &&
            listenToNonDelegatedEvent("scroll", didHydrate),
          null != props.onScrollEnd &&
            listenToNonDelegatedEvent("scrollend", didHydrate),
          null != props.onClick && (didHydrate.onclick = noop$1),
          (didHydrate = !0))
        : (didHydrate = !1);
      didHydrate || throwOnHydrationMismatch(fiber, !0);
    }
    function popToNextHostParent(fiber) {
      for (hydrationParentFiber = fiber.return; hydrationParentFiber; )
        switch (hydrationParentFiber.tag) {
          case 5:
          case 31:
          case 13:
            rootOrSingletonContext = !1;
            return;
          case 27:
          case 3:
            rootOrSingletonContext = !0;
            return;
          default:
            hydrationParentFiber = hydrationParentFiber.return;
        }
    }
    function popHydrationState(fiber) {
      if (fiber !== hydrationParentFiber) return !1;
      if (!isHydrating)
        return popToNextHostParent(fiber), (isHydrating = !0), !1;
      var tag = fiber.tag,
        JSCompiler_temp;
      if ((JSCompiler_temp = 3 !== tag && 27 !== tag)) {
        if ((JSCompiler_temp = 5 === tag))
          (JSCompiler_temp = fiber.type),
            (JSCompiler_temp =
              !("form" !== JSCompiler_temp && "button" !== JSCompiler_temp) ||
              shouldSetTextContent(fiber.type, fiber.memoizedProps));
        JSCompiler_temp = !JSCompiler_temp;
      }
      if (JSCompiler_temp && nextHydratableInstance) {
        for (JSCompiler_temp = nextHydratableInstance; JSCompiler_temp; ) {
          var diffNode = buildHydrationDiffNode(fiber, 0),
            description =
              describeHydratableInstanceForDevWarnings(JSCompiler_temp);
          diffNode.serverTail.push(description);
          JSCompiler_temp =
            "Suspense" === description.type
              ? getNextHydratableInstanceAfterHydrationBoundary(JSCompiler_temp)
              : getNextHydratable(JSCompiler_temp.nextSibling);
        }
        throwOnHydrationMismatch(fiber);
      }
      popToNextHostParent(fiber);
      if (13 === tag) {
        fiber = fiber.memoizedState;
        fiber = null !== fiber ? fiber.dehydrated : null;
        if (!fiber)
          throw Error(
            "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
          );
        nextHydratableInstance =
          getNextHydratableInstanceAfterHydrationBoundary(fiber);
      } else if (31 === tag) {
        fiber = fiber.memoizedState;
        fiber = null !== fiber ? fiber.dehydrated : null;
        if (!fiber)
          throw Error(
            "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
          );
        nextHydratableInstance =
          getNextHydratableInstanceAfterHydrationBoundary(fiber);
      } else
        27 === tag
          ? ((tag = nextHydratableInstance),
            isSingletonScope(fiber.type)
              ? ((fiber = previousHydratableOnEnteringScopedSingleton),
                (previousHydratableOnEnteringScopedSingleton = null),
                (nextHydratableInstance = fiber))
              : (nextHydratableInstance = tag))
          : (nextHydratableInstance = hydrationParentFiber
              ? getNextHydratable(fiber.stateNode.nextSibling)
              : null);
      return !0;
    }
    function resetHydrationState() {
      nextHydratableInstance = hydrationParentFiber = null;
      didSuspendOrErrorDEV = isHydrating = !1;
    }
    function upgradeHydrationErrorsToRecoverable() {
      var queuedErrors = hydrationErrors;
      null !== queuedErrors &&
        (null === workInProgressRootRecoverableErrors
          ? (workInProgressRootRecoverableErrors = queuedErrors)
          : workInProgressRootRecoverableErrors.push.apply(
              workInProgressRootRecoverableErrors,
              queuedErrors
            ),
        (hydrationErrors = null));
      return queuedErrors;
    }
    function queueHydrationError(error) {
      null === hydrationErrors
        ? (hydrationErrors = [error])
        : hydrationErrors.push(error);
    }
    function emitPendingHydrationWarnings() {
      var diffRoot = hydrationDiffRootDEV;
      if (null !== diffRoot) {
        hydrationDiffRootDEV = null;
        for (var diff = describeDiff(diffRoot); 0 < diffRoot.children.length; )
          diffRoot = diffRoot.children[0];
        runWithFiberInDEV(diffRoot.fiber, function () {
          console.error(
            "A tree hydrated but some attributes of the server rendered HTML didn't match the client properties. This won't be patched up. This can happen if a SSR-ed Client Component used:\n\n- A server/client branch `if (typeof window !== 'undefined')`.\n- Variable input such as `Date.now()` or `Math.random()` which changes each time it's called.\n- Date formatting in a user's locale which doesn't match the server.\n- External changing data without sending a snapshot of it along with the HTML.\n- Invalid HTML tag nesting.\n\nIt can also happen if the client has a browser extension installed which messes with the HTML before React loaded.\n\n%s%s",
            "https://react.dev/link/hydration-mismatch",
            diff
          );
        });
      }
    }
    function resetContextDependencies() {
      lastContextDependency = currentlyRenderingFiber$1 = null;
      isDisallowedContextReadInDEV = !1;
    }
    function pushProvider(providerFiber, context, nextValue) {
      push(valueCursor, context._currentValue, providerFiber);
      context._currentValue = nextValue;
      push(rendererCursorDEV, context._currentRenderer, providerFiber);
      void 0 !== context._currentRenderer &&
        null !== context._currentRenderer &&
        context._currentRenderer !== rendererSigil &&
        console.error(
          "Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported."
        );
      context._currentRenderer = rendererSigil;
    }
    function popProvider(context, providerFiber) {
      context._currentValue = valueCursor.current;
      var currentRenderer = rendererCursorDEV.current;
      pop(rendererCursorDEV, providerFiber);
      context._currentRenderer = currentRenderer;
      pop(valueCursor, providerFiber);
    }
    function scheduleContextWorkOnParentPath(
      parent,
      renderLanes,
      propagationRoot
    ) {
      for (; null !== parent; ) {
        var alternate = parent.alternate;
        (parent.childLanes & renderLanes) !== renderLanes
          ? ((parent.childLanes |= renderLanes),
            null !== alternate && (alternate.childLanes |= renderLanes))
          : null !== alternate &&
            (alternate.childLanes & renderLanes) !== renderLanes &&
            (alternate.childLanes |= renderLanes);
        if (parent === propagationRoot) break;
        parent = parent.return;
      }
      parent !== propagationRoot &&
        console.error(
          "Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue."
        );
    }
    function propagateContextChanges(
      workInProgress,
      contexts,
      renderLanes,
      forcePropagateEntireTree
    ) {
      var fiber = workInProgress.child;
      null !== fiber && (fiber.return = workInProgress);
      for (; null !== fiber; ) {
        var list = fiber.dependencies;
        if (null !== list) {
          var nextFiber = fiber.child;
          list = list.firstContext;
          a: for (; null !== list; ) {
            var dependency = list;
            list = fiber;
            for (var i = 0; i < contexts.length; i++)
              if (dependency.context === contexts[i]) {
                list.lanes |= renderLanes;
                dependency = list.alternate;
                null !== dependency && (dependency.lanes |= renderLanes);
                scheduleContextWorkOnParentPath(
                  list.return,
                  renderLanes,
                  workInProgress
                );
                forcePropagateEntireTree || (nextFiber = null);
                break a;
              }
            list = dependency.next;
          }
        } else if (18 === fiber.tag) {
          nextFiber = fiber.return;
          if (null === nextFiber)
            throw Error(
              "We just came from a parent so we must have had a parent. This is a bug in React."
            );
          nextFiber.lanes |= renderLanes;
          list = nextFiber.alternate;
          null !== list && (list.lanes |= renderLanes);
          scheduleContextWorkOnParentPath(
            nextFiber,
            renderLanes,
            workInProgress
          );
          nextFiber = null;
        } else nextFiber = fiber.child;
        if (null !== nextFiber) nextFiber.return = fiber;
        else
          for (nextFiber = fiber; null !== nextFiber; ) {
            if (nextFiber === workInProgress) {
              nextFiber = null;
              break;
            }
            fiber = nextFiber.sibling;
            if (null !== fiber) {
              fiber.return = nextFiber.return;
              nextFiber = fiber;
              break;
            }
            nextFiber = nextFiber.return;
          }
        fiber = nextFiber;
      }
    }
    function propagateParentContextChanges(
      current,
      workInProgress,
      renderLanes,
      forcePropagateEntireTree
    ) {
      current = null;
      for (
        var parent = workInProgress, isInsidePropagationBailout = !1;
        null !== parent;

      ) {
        if (!isInsidePropagationBailout)
          if (0 !== (parent.flags & 524288)) isInsidePropagationBailout = !0;
          else if (0 !== (parent.flags & 262144)) break;
        if (10 === parent.tag) {
          var currentParent = parent.alternate;
          if (null === currentParent)
            throw Error("Should have a current fiber. This is a bug in React.");
          currentParent = currentParent.memoizedProps;
          if (null !== currentParent) {
            var context = parent.type;
            objectIs(parent.pendingProps.value, currentParent.value) ||
              (null !== current
                ? current.push(context)
                : (current = [context]));
          }
        } else if (parent === hostTransitionProviderCursor.current) {
          currentParent = parent.alternate;
          if (null === currentParent)
            throw Error("Should have a current fiber. This is a bug in React.");
          currentParent.memoizedState.memoizedState !==
            parent.memoizedState.memoizedState &&
            (null !== current
              ? current.push(HostTransitionContext)
              : (current = [HostTransitionContext]));
        }
        parent = parent.return;
      }
      null !== current &&
        propagateContextChanges(
          workInProgress,
          current,
          renderLanes,
          forcePropagateEntireTree
        );
      workInProgress.flags |= 262144;
    }
    function checkIfContextChanged(currentDependencies) {
      for (
        currentDependencies = currentDependencies.firstContext;
        null !== currentDependencies;

      ) {
        if (
          !objectIs(
            currentDependencies.context._currentValue,
            currentDependencies.memoizedValue
          )
        )
          return !0;
        currentDependencies = currentDependencies.next;
      }
      return !1;
    }
    function prepareToReadContext(workInProgress) {
      currentlyRenderingFiber$1 = workInProgress;
      lastContextDependency = null;
      workInProgress = workInProgress.dependencies;
      null !== workInProgress && (workInProgress.firstContext = null);
    }
    function readContext(context) {
      isDisallowedContextReadInDEV &&
        console.error(
          "Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."
        );
      return readContextForConsumer(currentlyRenderingFiber$1, context);
    }
    function readContextDuringReconciliation(consumer, context) {
      null === currentlyRenderingFiber$1 && prepareToReadContext(consumer);
      return readContextForConsumer(consumer, context);
    }
    function readContextForConsumer(consumer, context) {
      var value = context._currentValue;
      context = { context: context, memoizedValue: value, next: null };
      if (null === lastContextDependency) {
        if (null === consumer)
          throw Error(
            "Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."
          );
        lastContextDependency = context;
        consumer.dependencies = {
          lanes: 0,
          firstContext: context,
          _debugThenableState: null
        };
        consumer.flags |= 524288;
      } else lastContextDependency = lastContextDependency.next = context;
      return value;
    }
    function createCache() {
      return {
        controller: new AbortControllerLocal(),
        data: new Map(),
        refCount: 0
      };
    }
    function retainCache(cache) {
      cache.controller.signal.aborted &&
        console.warn(
          "A cache instance was retained after it was already freed. This likely indicates a bug in React."
        );
      cache.refCount++;
    }
    function releaseCache(cache) {
      cache.refCount--;
      0 > cache.refCount &&
        console.warn(
          "A cache instance was released after it was already freed. This likely indicates a bug in React."
        );
      0 === cache.refCount &&
        scheduleCallback$2(NormalPriority, function () {
          cache.controller.abort();
        });
    }
    function startUpdateTimerByLane(lane, method, fiber) {
      if (0 !== (lane & 127))
        0 > blockingUpdateTime &&
          ((blockingUpdateTime = now()),
          (blockingUpdateTask = createTask(method)),
          (blockingUpdateMethodName = method),
          null != fiber &&
            (blockingUpdateComponentName = getComponentNameFromFiber(fiber)),
          (executionContext & (RenderContext | CommitContext)) !== NoContext &&
            ((componentEffectSpawnedUpdate = !0),
            (blockingUpdateType = SPAWNED_UPDATE)),
          (lane = resolveEventTimeStamp()),
          (method = resolveEventType()),
          lane !== blockingEventRepeatTime || method !== blockingEventType
            ? (blockingEventRepeatTime = -1.1)
            : null !== method && (blockingUpdateType = SPAWNED_UPDATE),
          (blockingEventTime = lane),
          (blockingEventType = method));
      else if (
        0 !== (lane & 4194048) &&
        0 > transitionUpdateTime &&
        ((transitionUpdateTime = now()),
        (transitionUpdateTask = createTask(method)),
        (transitionUpdateMethodName = method),
        null != fiber &&
          (transitionUpdateComponentName = getComponentNameFromFiber(fiber)),
        0 > transitionStartTime)
      ) {
        lane = resolveEventTimeStamp();
        method = resolveEventType();
        if (
          lane !== transitionEventRepeatTime ||
          method !== transitionEventType
        )
          transitionEventRepeatTime = -1.1;
        transitionEventTime = lane;
        transitionEventType = method;
      }
    }
    function startHostActionTimer(fiber) {
      if (0 > blockingUpdateTime) {
        blockingUpdateTime = now();
        blockingUpdateTask = null != fiber._debugTask ? fiber._debugTask : null;
        (executionContext & (RenderContext | CommitContext)) !== NoContext &&
          (blockingUpdateType = SPAWNED_UPDATE);
        var newEventTime = resolveEventTimeStamp(),
          newEventType = resolveEventType();
        newEventTime !== blockingEventRepeatTime ||
        newEventType !== blockingEventType
          ? (blockingEventRepeatTime = -1.1)
          : null !== newEventType && (blockingUpdateType = SPAWNED_UPDATE);
        blockingEventTime = newEventTime;
        blockingEventType = newEventType;
      }
      if (
        0 > transitionUpdateTime &&
        ((transitionUpdateTime = now()),
        (transitionUpdateTask =
          null != fiber._debugTask ? fiber._debugTask : null),
        0 > transitionStartTime)
      ) {
        fiber = resolveEventTimeStamp();
        newEventTime = resolveEventType();
        if (
          fiber !== transitionEventRepeatTime ||
          newEventTime !== transitionEventType
        )
          transitionEventRepeatTime = -1.1;
        transitionEventTime = fiber;
        transitionEventType = newEventTime;
      }
    }
    function pushNestedEffectDurations() {
      var prevEffectDuration = profilerEffectDuration;
      profilerEffectDuration = 0;
      return prevEffectDuration;
    }
    function popNestedEffectDurations(prevEffectDuration) {
      var elapsedTime = profilerEffectDuration;
      profilerEffectDuration = prevEffectDuration;
      return elapsedTime;
    }
    function bubbleNestedEffectDurations(prevEffectDuration) {
      var elapsedTime = profilerEffectDuration;
      profilerEffectDuration += prevEffectDuration;
      return elapsedTime;
    }
    function resetComponentEffectTimers() {
      componentEffectEndTime = componentEffectStartTime = -1.1;
    }
    function pushComponentEffectStart() {
      var prevEffectStart = componentEffectStartTime;
      componentEffectStartTime = -1.1;
      return prevEffectStart;
    }
    function popComponentEffectStart(prevEffectStart) {
      0 <= prevEffectStart && (componentEffectStartTime = prevEffectStart);
    }
    function pushComponentEffectDuration() {
      var prevEffectDuration = componentEffectDuration;
      componentEffectDuration = -0;
      return prevEffectDuration;
    }
    function popComponentEffectDuration(prevEffectDuration) {
      0 <= prevEffectDuration && (componentEffectDuration = prevEffectDuration);
    }
    function pushComponentEffectErrors() {
      var prevErrors = componentEffectErrors;
      componentEffectErrors = null;
      return prevErrors;
    }
    function pushComponentEffectDidSpawnUpdate() {
      var prev = componentEffectSpawnedUpdate;
      componentEffectSpawnedUpdate = !1;
      return prev;
    }
    function startProfilerTimer(fiber) {
      profilerStartTime = now();
      0 > fiber.actualStartTime && (fiber.actualStartTime = profilerStartTime);
    }
    function stopProfilerTimerIfRunningAndRecordDuration(fiber) {
      if (0 <= profilerStartTime) {
        var elapsedTime = now() - profilerStartTime;
        fiber.actualDuration += elapsedTime;
        fiber.selfBaseDuration = elapsedTime;
        profilerStartTime = -1;
      }
    }
    function stopProfilerTimerIfRunningAndRecordIncompleteDuration(fiber) {
      if (0 <= profilerStartTime) {
        var elapsedTime = now() - profilerStartTime;
        fiber.actualDuration += elapsedTime;
        profilerStartTime = -1;
      }
    }
    function recordEffectDuration() {
      if (0 <= profilerStartTime) {
        var endTime = now(),
          elapsedTime = endTime - profilerStartTime;
        profilerStartTime = -1;
        profilerEffectDuration += elapsedTime;
        componentEffectDuration += elapsedTime;
        componentEffectEndTime = endTime;
      }
    }
    function recordEffectError(errorInfo) {
      null === componentEffectErrors && (componentEffectErrors = []);
      componentEffectErrors.push(errorInfo);
      null === commitErrors && (commitErrors = []);
      commitErrors.push(errorInfo);
    }
    function startEffectTimer() {
      profilerStartTime = now();
      0 > componentEffectStartTime &&
        (componentEffectStartTime = profilerStartTime);
    }
    function transferActualDuration(fiber) {
      for (var child = fiber.child; child; )
        (fiber.actualDuration += child.actualDuration), (child = child.sibling);
    }
    function entangleAsyncAction(transition, thenable) {
      if (null === currentEntangledListeners) {
        var entangledListeners = (currentEntangledListeners = []);
        currentEntangledPendingCount = 0;
        currentEntangledLane = requestTransitionLane();
        currentEntangledActionThenable = {
          status: "pending",
          value: void 0,
          then: function (resolve) {
            entangledListeners.push(resolve);
          }
        };
      }
      currentEntangledPendingCount++;
      thenable.then(pingEngtangledActionScope, pingEngtangledActionScope);
      return thenable;
    }
    function pingEngtangledActionScope() {
      if (
        0 === --currentEntangledPendingCount &&
        (-1 < transitionUpdateTime || (transitionStartTime = -1.1),
        null !== currentEntangledListeners)
      ) {
        null !== currentEntangledActionThenable &&
          (currentEntangledActionThenable.status = "fulfilled");
        var listeners = currentEntangledListeners;
        currentEntangledListeners = null;
        currentEntangledLane = 0;
        currentEntangledActionThenable = null;
        for (var i = 0; i < listeners.length; i++) (0, listeners[i])();
      }
    }
    function chainThenableValue(thenable, result) {
      var listeners = [],
        thenableWithOverride = {
          status: "pending",
          value: null,
          reason: null,
          then: function (resolve) {
            listeners.push(resolve);
          }
        };
      thenable.then(
        function () {
          thenableWithOverride.status = "fulfilled";
          thenableWithOverride.value = result;
          for (var i = 0; i < listeners.length; i++) (0, listeners[i])(result);
        },
        function (error) {
          thenableWithOverride.status = "rejected";
          thenableWithOverride.reason = error;
          for (error = 0; error < listeners.length; error++)
            (0, listeners[error])(void 0);
        }
      );
      return thenableWithOverride;
    }
    function peekCacheFromPool() {
      var cacheResumedFromPreviousRender = resumedCache.current;
      return null !== cacheResumedFromPreviousRender
        ? cacheResumedFromPreviousRender
        : workInProgressRoot.pooledCache;
    }
    function pushTransition(offscreenWorkInProgress, prevCachePool) {
      null === prevCachePool
        ? push(resumedCache, resumedCache.current, offscreenWorkInProgress)
        : push(resumedCache, prevCachePool.pool, offscreenWorkInProgress);
    }
    function getSuspendedCache() {
      var cacheFromPool = peekCacheFromPool();
      return null === cacheFromPool
        ? null
        : { parent: CacheContext._currentValue, pool: cacheFromPool };
    }
    function createThenableState() {
      return { didWarnAboutUncachedPromise: !1, thenables: [] };
    }
    function isThenableResolved(thenable) {
      thenable = thenable.status;
      return "fulfilled" === thenable || "rejected" === thenable;
    }
    function trackUsedThenable(thenableState, thenable, index) {
      null !== ReactSharedInternals.actQueue &&
        (ReactSharedInternals.didUsePromise = !0);
      var trackedThenables = thenableState.thenables;
      index = trackedThenables[index];
      void 0 === index
        ? trackedThenables.push(thenable)
        : index !== thenable &&
          (thenableState.didWarnAboutUncachedPromise ||
            ((thenableState.didWarnAboutUncachedPromise = !0),
            console.error(
              "A component was suspended by an uncached promise. Creating promises inside a Client Component or hook is not yet supported, except via a Suspense-compatible library or framework."
            )),
          thenable.then(noop$1, noop$1),
          (thenable = index));
      if (void 0 === thenable._debugInfo) {
        thenableState = performance.now();
        trackedThenables = thenable.displayName;
        var ioInfo = {
          name:
            "string" === typeof trackedThenables ? trackedThenables : "Promise",
          start: thenableState,
          end: thenableState,
          value: thenable
        };
        thenable._debugInfo = [{ awaited: ioInfo }];
        "fulfilled" !== thenable.status &&
          "rejected" !== thenable.status &&
          ((thenableState = function () {
            ioInfo.end = performance.now();
          }),
          thenable.then(thenableState, thenableState));
      }
      switch (thenable.status) {
        case "fulfilled":
          return thenable.value;
        case "rejected":
          throw (
            ((thenableState = thenable.reason),
            checkIfUseWrappedInAsyncCatch(thenableState),
            thenableState)
          );
        default:
          if ("string" === typeof thenable.status)
            thenable.then(noop$1, noop$1);
          else {
            thenableState = workInProgressRoot;
            if (
              null !== thenableState &&
              100 < thenableState.shellSuspendCounter
            )
              throw Error(
                "An unknown Component is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server."
              );
            thenableState = thenable;
            thenableState.status = "pending";
            thenableState.then(
              function (fulfilledValue) {
                if ("pending" === thenable.status) {
                  var fulfilledThenable = thenable;
                  fulfilledThenable.status = "fulfilled";
                  fulfilledThenable.value = fulfilledValue;
                }
              },
              function (error) {
                if ("pending" === thenable.status) {
                  var rejectedThenable = thenable;
                  rejectedThenable.status = "rejected";
                  rejectedThenable.reason = error;
                }
              }
            );
          }
          switch (thenable.status) {
            case "fulfilled":
              return thenable.value;
            case "rejected":
              throw (
                ((thenableState = thenable.reason),
                checkIfUseWrappedInAsyncCatch(thenableState),
                thenableState)
              );
          }
          suspendedThenable = thenable;
          needsToResetSuspendedThenableDEV = !0;
          throw SuspenseException;
      }
    }
    function resolveLazy(lazyType) {
      try {
        return callLazyInitInDEV(lazyType);
      } catch (x) {
        if (null !== x && "object" === typeof x && "function" === typeof x.then)
          throw (
            ((suspendedThenable = x),
            (needsToResetSuspendedThenableDEV = !0),
            SuspenseException)
          );
        throw x;
      }
    }
    function getSuspendedThenable() {
      if (null === suspendedThenable)
        throw Error(
          "Expected a suspended thenable. This is a bug in React. Please file an issue."
        );
      var thenable = suspendedThenable;
      suspendedThenable = null;
      needsToResetSuspendedThenableDEV = !1;
      return thenable;
    }
    function checkIfUseWrappedInAsyncCatch(rejectedReason) {
      if (
        rejectedReason === SuspenseException ||
        rejectedReason === SuspenseActionException
      )
        throw Error(
          "Hooks are not supported inside an async component. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server."
        );
    }
    function pushDebugInfo(debugInfo) {
      var previousDebugInfo = currentDebugInfo;
      null != debugInfo &&
        (currentDebugInfo =
          null === previousDebugInfo
            ? debugInfo
            : previousDebugInfo.concat(debugInfo));
      return previousDebugInfo;
    }
    function getCurrentDebugTask() {
      var debugInfo = currentDebugInfo;
      if (null != debugInfo)
        for (var i = debugInfo.length - 1; 0 <= i; i--)
          if (null != debugInfo[i].name) {
            var debugTask = debugInfo[i].debugTask;
            if (null != debugTask) return debugTask;
          }
      return null;
    }
    function validateFragmentProps(element, fiber, returnFiber) {
      for (var keys = Object.keys(element.props), i = 0; i < keys.length; i++) {
        var key = keys[i];
        if ("children" !== key && "key" !== key) {
          null === fiber &&
            ((fiber = createFiberFromElement(element, returnFiber.mode, 0)),
            (fiber._debugInfo = currentDebugInfo),
            (fiber.return = returnFiber));
          runWithFiberInDEV(
            fiber,
            function (erroredKey) {
              console.error(
                "Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",
                erroredKey
              );
            },
            key
          );
          break;
        }
      }
    }
    function unwrapThenable(thenable) {
      var index = thenableIndexCounter$1;
      thenableIndexCounter$1 += 1;
      null === thenableState$1 && (thenableState$1 = createThenableState());
      return trackUsedThenable(thenableState$1, thenable, index);
    }
    function coerceRef(workInProgress, element) {
      element = element.props.ref;
      workInProgress.ref = void 0 !== element ? element : null;
    }
    function throwOnInvalidObjectTypeImpl(returnFiber, newChild) {
      if (newChild.$$typeof === REACT_LEGACY_ELEMENT_TYPE)
        throw Error(
          'A React Element from an older version of React was rendered. This is not supported. It can happen if:\n- Multiple copies of the "react" package is used.\n- A library pre-bundled an old copy of "react" or "react/jsx-runtime".\n- A compiler tries to "inline" JSX instead of using the runtime.'
        );
      returnFiber = Object.prototype.toString.call(newChild);
      throw Error(
        "Objects are not valid as a React child (found: " +
          ("[object Object]" === returnFiber
            ? "object with keys {" + Object.keys(newChild).join(", ") + "}"
            : returnFiber) +
          "). If you meant to render a collection of children, use an array instead."
      );
    }
    function throwOnInvalidObjectType(returnFiber, newChild) {
      var debugTask = getCurrentDebugTask();
      null !== debugTask
        ? debugTask.run(
            throwOnInvalidObjectTypeImpl.bind(null, returnFiber, newChild)
          )
        : throwOnInvalidObjectTypeImpl(returnFiber, newChild);
    }
    function warnOnFunctionTypeImpl(returnFiber, invalidChild) {
      var parentName = getComponentNameFromFiber(returnFiber) || "Component";
      ownerHasFunctionTypeWarning[parentName] ||
        ((ownerHasFunctionTypeWarning[parentName] = !0),
        (invalidChild =
          invalidChild.displayName || invalidChild.name || "Component"),
        3 === returnFiber.tag
          ? console.error(
              "Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\n  root.render(%s)",
              invalidChild,
              invalidChild,
              invalidChild
            )
          : console.error(
              "Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.\n  <%s>{%s}</%s>",
              invalidChild,
              invalidChild,
              parentName,
              invalidChild,
              parentName
            ));
    }
    function warnOnFunctionType(returnFiber, invalidChild) {
      var debugTask = getCurrentDebugTask();
      null !== debugTask
        ? debugTask.run(
            warnOnFunctionTypeImpl.bind(null, returnFiber, invalidChild)
          )
        : warnOnFunctionTypeImpl(returnFiber, invalidChild);
    }
    function warnOnSymbolTypeImpl(returnFiber, invalidChild) {
      var parentName = getComponentNameFromFiber(returnFiber) || "Component";
      ownerHasSymbolTypeWarning[parentName] ||
        ((ownerHasSymbolTypeWarning[parentName] = !0),
        (invalidChild = String(invalidChild)),
        3 === returnFiber.tag
          ? console.error(
              "Symbols are not valid as a React child.\n  root.render(%s)",
              invalidChild
            )
          : console.error(
              "Symbols are not valid as a React child.\n  <%s>%s</%s>",
              parentName,
              invalidChild,
              parentName
            ));
    }
    function warnOnSymbolType(returnFiber, invalidChild) {
      var debugTask = getCurrentDebugTask();
      null !== debugTask
        ? debugTask.run(
            warnOnSymbolTypeImpl.bind(null, returnFiber, invalidChild)
          )
        : warnOnSymbolTypeImpl(returnFiber, invalidChild);
    }
    function createChildReconciler(shouldTrackSideEffects) {
      function deleteChild(returnFiber, childToDelete) {
        if (shouldTrackSideEffects) {
          var deletions = returnFiber.deletions;
          null === deletions
            ? ((returnFiber.deletions = [childToDelete]),
              (returnFiber.flags |= 16))
            : deletions.push(childToDelete);
        }
      }
      function deleteRemainingChildren(returnFiber, currentFirstChild) {
        if (!shouldTrackSideEffects) return null;
        for (; null !== currentFirstChild; )
          deleteChild(returnFiber, currentFirstChild),
            (currentFirstChild = currentFirstChild.sibling);
        return null;
      }
      function mapRemainingChildren(currentFirstChild) {
        for (var existingChildren = new Map(); null !== currentFirstChild; )
          null !== currentFirstChild.key
            ? existingChildren.set(currentFirstChild.key, currentFirstChild)
            : existingChildren.set(currentFirstChild.index, currentFirstChild),
            (currentFirstChild = currentFirstChild.sibling);
        return existingChildren;
      }
      function useFiber(fiber, pendingProps) {
        fiber = createWorkInProgress(fiber, pendingProps);
        fiber.index = 0;
        fiber.sibling = null;
        return fiber;
      }
      function placeChild(newFiber, lastPlacedIndex, newIndex) {
        newFiber.index = newIndex;
        if (!shouldTrackSideEffects)
          return (newFiber.flags |= 1048576), lastPlacedIndex;
        newIndex = newFiber.alternate;
        if (null !== newIndex)
          return (
            (newIndex = newIndex.index),
            newIndex < lastPlacedIndex
              ? ((newFiber.flags |= 67108866), lastPlacedIndex)
              : newIndex
          );
        newFiber.flags |= 67108866;
        return lastPlacedIndex;
      }
      function placeSingleChild(newFiber) {
        shouldTrackSideEffects &&
          null === newFiber.alternate &&
          (newFiber.flags |= 67108866);
        return newFiber;
      }
      function updateTextNode(returnFiber, current, textContent, lanes) {
        if (null === current || 6 !== current.tag)
          return (
            (current = createFiberFromText(
              textContent,
              returnFiber.mode,
              lanes
            )),
            (current.return = returnFiber),
            (current._debugOwner = returnFiber),
            (current._debugTask = returnFiber._debugTask),
            (current._debugInfo = currentDebugInfo),
            current
          );
        current = useFiber(current, textContent);
        current.return = returnFiber;
        current._debugInfo = currentDebugInfo;
        return current;
      }
      function updateElement(returnFiber, current, element, lanes) {
        var elementType = element.type;
        if (elementType === REACT_FRAGMENT_TYPE)
          return (
            (current = updateFragment(
              returnFiber,
              current,
              element.props.children,
              lanes,
              element.key
            )),
            validateFragmentProps(element, current, returnFiber),
            current
          );
        if (
          null !== current &&
          (current.elementType === elementType ||
            isCompatibleFamilyForHotReloading(current, element) ||
            ("object" === typeof elementType &&
              null !== elementType &&
              elementType.$$typeof === REACT_LAZY_TYPE &&
              resolveLazy(elementType) === current.type))
        )
          return (
            (current = useFiber(current, element.props)),
            coerceRef(current, element),
            (current.return = returnFiber),
            (current._debugOwner = element._owner),
            (current._debugInfo = currentDebugInfo),
            current
          );
        current = createFiberFromElement(element, returnFiber.mode, lanes);
        coerceRef(current, element);
        current.return = returnFiber;
        current._debugInfo = currentDebugInfo;
        return current;
      }
      function updatePortal(returnFiber, current, portal, lanes) {
        if (
          null === current ||
          4 !== current.tag ||
          current.stateNode.containerInfo !== portal.containerInfo ||
          current.stateNode.implementation !== portal.implementation
        )
          return (
            (current = createFiberFromPortal(portal, returnFiber.mode, lanes)),
            (current.return = returnFiber),
            (current._debugInfo = currentDebugInfo),
            current
          );
        current = useFiber(current, portal.children || []);
        current.return = returnFiber;
        current._debugInfo = currentDebugInfo;
        return current;
      }
      function updateFragment(returnFiber, current, fragment, lanes, key) {
        if (null === current || 7 !== current.tag)
          return (
            (current = createFiberFromFragment(
              fragment,
              returnFiber.mode,
              lanes,
              key
            )),
            (current.return = returnFiber),
            (current._debugOwner = returnFiber),
            (current._debugTask = returnFiber._debugTask),
            (current._debugInfo = currentDebugInfo),
            current
          );
        current = useFiber(current, fragment);
        current.return = returnFiber;
        current._debugInfo = currentDebugInfo;
        return current;
      }
      function createChild(returnFiber, newChild, lanes) {
        if (
          ("string" === typeof newChild && "" !== newChild) ||
          "number" === typeof newChild ||
          "bigint" === typeof newChild
        )
          return (
            (newChild = createFiberFromText(
              "" + newChild,
              returnFiber.mode,
              lanes
            )),
            (newChild.return = returnFiber),
            (newChild._debugOwner = returnFiber),
            (newChild._debugTask = returnFiber._debugTask),
            (newChild._debugInfo = currentDebugInfo),
            newChild
          );
        if ("object" === typeof newChild && null !== newChild) {
          switch (newChild.$$typeof) {
            case REACT_ELEMENT_TYPE:
              return (
                (lanes = createFiberFromElement(
                  newChild,
                  returnFiber.mode,
                  lanes
                )),
                coerceRef(lanes, newChild),
                (lanes.return = returnFiber),
                (returnFiber = pushDebugInfo(newChild._debugInfo)),
                (lanes._debugInfo = currentDebugInfo),
                (currentDebugInfo = returnFiber),
                lanes
              );
            case REACT_PORTAL_TYPE:
              return (
                (newChild = createFiberFromPortal(
                  newChild,
                  returnFiber.mode,
                  lanes
                )),
                (newChild.return = returnFiber),
                (newChild._debugInfo = currentDebugInfo),
                newChild
              );
            case REACT_LAZY_TYPE:
              var _prevDebugInfo = pushDebugInfo(newChild._debugInfo);
              newChild = resolveLazy(newChild);
              returnFiber = createChild(returnFiber, newChild, lanes);
              currentDebugInfo = _prevDebugInfo;
              return returnFiber;
          }
          if (isArrayImpl(newChild) || getIteratorFn(newChild))
            return (
              (lanes = createFiberFromFragment(
                newChild,
                returnFiber.mode,
                lanes,
                null
              )),
              (lanes.return = returnFiber),
              (lanes._debugOwner = returnFiber),
              (lanes._debugTask = returnFiber._debugTask),
              (returnFiber = pushDebugInfo(newChild._debugInfo)),
              (lanes._debugInfo = currentDebugInfo),
              (currentDebugInfo = returnFiber),
              lanes
            );
          if ("function" === typeof newChild.then)
            return (
              (_prevDebugInfo = pushDebugInfo(newChild._debugInfo)),
              (returnFiber = createChild(
                returnFiber,
                unwrapThenable(newChild),
                lanes
              )),
              (currentDebugInfo = _prevDebugInfo),
              returnFiber
            );
          if (newChild.$$typeof === REACT_CONTEXT_TYPE)
            return createChild(
              returnFiber,
              readContextDuringReconciliation(returnFiber, newChild),
              lanes
            );
          throwOnInvalidObjectType(returnFiber, newChild);
        }
        "function" === typeof newChild &&
          warnOnFunctionType(returnFiber, newChild);
        "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
        return null;
      }
      function updateSlot(returnFiber, oldFiber, newChild, lanes) {
        var key = null !== oldFiber ? oldFiber.key : null;
        if (
          ("string" === typeof newChild && "" !== newChild) ||
          "number" === typeof newChild ||
          "bigint" === typeof newChild
        )
          return null !== key
            ? null
            : updateTextNode(returnFiber, oldFiber, "" + newChild, lanes);
        if ("object" === typeof newChild && null !== newChild) {
          switch (newChild.$$typeof) {
            case REACT_ELEMENT_TYPE:
              return newChild.key === key
                ? ((key = pushDebugInfo(newChild._debugInfo)),
                  (returnFiber = updateElement(
                    returnFiber,
                    oldFiber,
                    newChild,
                    lanes
                  )),
                  (currentDebugInfo = key),
                  returnFiber)
                : null;
            case REACT_PORTAL_TYPE:
              return newChild.key === key
                ? updatePortal(returnFiber, oldFiber, newChild, lanes)
                : null;
            case REACT_LAZY_TYPE:
              return (
                (key = pushDebugInfo(newChild._debugInfo)),
                (newChild = resolveLazy(newChild)),
                (returnFiber = updateSlot(
                  returnFiber,
                  oldFiber,
                  newChild,
                  lanes
                )),
                (currentDebugInfo = key),
                returnFiber
              );
          }
          if (isArrayImpl(newChild) || getIteratorFn(newChild)) {
            if (null !== key) return null;
            key = pushDebugInfo(newChild._debugInfo);
            returnFiber = updateFragment(
              returnFiber,
              oldFiber,
              newChild,
              lanes,
              null
            );
            currentDebugInfo = key;
            return returnFiber;
          }
          if ("function" === typeof newChild.then)
            return (
              (key = pushDebugInfo(newChild._debugInfo)),
              (returnFiber = updateSlot(
                returnFiber,
                oldFiber,
                unwrapThenable(newChild),
                lanes
              )),
              (currentDebugInfo = key),
              returnFiber
            );
          if (newChild.$$typeof === REACT_CONTEXT_TYPE)
            return updateSlot(
              returnFiber,
              oldFiber,
              readContextDuringReconciliation(returnFiber, newChild),
              lanes
            );
          throwOnInvalidObjectType(returnFiber, newChild);
        }
        "function" === typeof newChild &&
          warnOnFunctionType(returnFiber, newChild);
        "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
        return null;
      }
      function updateFromMap(
        existingChildren,
        returnFiber,
        newIdx,
        newChild,
        lanes
      ) {
        if (
          ("string" === typeof newChild && "" !== newChild) ||
          "number" === typeof newChild ||
          "bigint" === typeof newChild
        )
          return (
            (existingChildren = existingChildren.get(newIdx) || null),
            updateTextNode(returnFiber, existingChildren, "" + newChild, lanes)
          );
        if ("object" === typeof newChild && null !== newChild) {
          switch (newChild.$$typeof) {
            case REACT_ELEMENT_TYPE:
              return (
                (newIdx =
                  existingChildren.get(
                    null === newChild.key ? newIdx : newChild.key
                  ) || null),
                (existingChildren = pushDebugInfo(newChild._debugInfo)),
                (returnFiber = updateElement(
                  returnFiber,
                  newIdx,
                  newChild,
                  lanes
                )),
                (currentDebugInfo = existingChildren),
                returnFiber
              );
            case REACT_PORTAL_TYPE:
              return (
                (existingChildren =
                  existingChildren.get(
                    null === newChild.key ? newIdx : newChild.key
                  ) || null),
                updatePortal(returnFiber, existingChildren, newChild, lanes)
              );
            case REACT_LAZY_TYPE:
              var _prevDebugInfo7 = pushDebugInfo(newChild._debugInfo);
              newChild = resolveLazy(newChild);
              returnFiber = updateFromMap(
                existingChildren,
                returnFiber,
                newIdx,
                newChild,
                lanes
              );
              currentDebugInfo = _prevDebugInfo7;
              return returnFiber;
          }
          if (isArrayImpl(newChild) || getIteratorFn(newChild))
            return (
              (newIdx = existingChildren.get(newIdx) || null),
              (existingChildren = pushDebugInfo(newChild._debugInfo)),
              (returnFiber = updateFragment(
                returnFiber,
                newIdx,
                newChild,
                lanes,
                null
              )),
              (currentDebugInfo = existingChildren),
              returnFiber
            );
          if ("function" === typeof newChild.then)
            return (
              (_prevDebugInfo7 = pushDebugInfo(newChild._debugInfo)),
              (returnFiber = updateFromMap(
                existingChildren,
                returnFiber,
                newIdx,
                unwrapThenable(newChild),
                lanes
              )),
              (currentDebugInfo = _prevDebugInfo7),
              returnFiber
            );
          if (newChild.$$typeof === REACT_CONTEXT_TYPE)
            return updateFromMap(
              existingChildren,
              returnFiber,
              newIdx,
              readContextDuringReconciliation(returnFiber, newChild),
              lanes
            );
          throwOnInvalidObjectType(returnFiber, newChild);
        }
        "function" === typeof newChild &&
          warnOnFunctionType(returnFiber, newChild);
        "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
        return null;
      }
      function warnOnInvalidKey(returnFiber, workInProgress, child, knownKeys) {
        if ("object" !== typeof child || null === child) return knownKeys;
        switch (child.$$typeof) {
          case REACT_ELEMENT_TYPE:
          case REACT_PORTAL_TYPE:
            warnForMissingKey(returnFiber, workInProgress, child);
            var key = child.key;
            if ("string" !== typeof key) break;
            if (null === knownKeys) {
              knownKeys = new Set();
              knownKeys.add(key);
              break;
            }
            if (!knownKeys.has(key)) {
              knownKeys.add(key);
              break;
            }
            runWithFiberInDEV(workInProgress, function () {
              console.error(
                "Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/or omitted \u2014 the behavior is unsupported and could change in a future version.",
                key
              );
            });
            break;
          case REACT_LAZY_TYPE:
            (child = resolveLazy(child)),
              warnOnInvalidKey(returnFiber, workInProgress, child, knownKeys);
        }
        return knownKeys;
      }
      function reconcileChildrenArray(
        returnFiber,
        currentFirstChild,
        newChildren,
        lanes
      ) {
        for (
          var knownKeys = null,
            resultingFirstChild = null,
            previousNewFiber = null,
            oldFiber = currentFirstChild,
            newIdx = (currentFirstChild = 0),
            nextOldFiber = null;
          null !== oldFiber && newIdx < newChildren.length;
          newIdx++
        ) {
          oldFiber.index > newIdx
            ? ((nextOldFiber = oldFiber), (oldFiber = null))
            : (nextOldFiber = oldFiber.sibling);
          var newFiber = updateSlot(
            returnFiber,
            oldFiber,
            newChildren[newIdx],
            lanes
          );
          if (null === newFiber) {
            null === oldFiber && (oldFiber = nextOldFiber);
            break;
          }
          knownKeys = warnOnInvalidKey(
            returnFiber,
            newFiber,
            newChildren[newIdx],
            knownKeys
          );
          shouldTrackSideEffects &&
            oldFiber &&
            null === newFiber.alternate &&
            deleteChild(returnFiber, oldFiber);
          currentFirstChild = placeChild(newFiber, currentFirstChild, newIdx);
          null === previousNewFiber
            ? (resultingFirstChild = newFiber)
            : (previousNewFiber.sibling = newFiber);
          previousNewFiber = newFiber;
          oldFiber = nextOldFiber;
        }
        if (newIdx === newChildren.length)
          return (
            deleteRemainingChildren(returnFiber, oldFiber),
            isHydrating && pushTreeFork(returnFiber, newIdx),
            resultingFirstChild
          );
        if (null === oldFiber) {
          for (; newIdx < newChildren.length; newIdx++)
            (oldFiber = createChild(returnFiber, newChildren[newIdx], lanes)),
              null !== oldFiber &&
                ((knownKeys = warnOnInvalidKey(
                  returnFiber,
                  oldFiber,
                  newChildren[newIdx],
                  knownKeys
                )),
                (currentFirstChild = placeChild(
                  oldFiber,
                  currentFirstChild,
                  newIdx
                )),
                null === previousNewFiber
                  ? (resultingFirstChild = oldFiber)
                  : (previousNewFiber.sibling = oldFiber),
                (previousNewFiber = oldFiber));
          isHydrating && pushTreeFork(returnFiber, newIdx);
          return resultingFirstChild;
        }
        for (
          oldFiber = mapRemainingChildren(oldFiber);
          newIdx < newChildren.length;
          newIdx++
        )
          (nextOldFiber = updateFromMap(
            oldFiber,
            returnFiber,
            newIdx,
            newChildren[newIdx],
            lanes
          )),
            null !== nextOldFiber &&
              ((knownKeys = warnOnInvalidKey(
                returnFiber,
                nextOldFiber,
                newChildren[newIdx],
                knownKeys
              )),
              shouldTrackSideEffects &&
                null !== nextOldFiber.alternate &&
                oldFiber.delete(
                  null === nextOldFiber.key ? newIdx : nextOldFiber.key
                ),
              (currentFirstChild = placeChild(
                nextOldFiber,
                currentFirstChild,
                newIdx
              )),
              null === previousNewFiber
                ? (resultingFirstChild = nextOldFiber)
                : (previousNewFiber.sibling = nextOldFiber),
              (previousNewFiber = nextOldFiber));
        shouldTrackSideEffects &&
          oldFiber.forEach(function (child) {
            return deleteChild(returnFiber, child);
          });
        isHydrating && pushTreeFork(returnFiber, newIdx);
        return resultingFirstChild;
      }
      function reconcileChildrenIterator(
        returnFiber,
        currentFirstChild,
        newChildren,
        lanes
      ) {
        if (null == newChildren)
          throw Error("An iterable object provided no iterator.");
        for (
          var resultingFirstChild = null,
            previousNewFiber = null,
            oldFiber = currentFirstChild,
            newIdx = (currentFirstChild = 0),
            nextOldFiber = null,
            knownKeys = null,
            step = newChildren.next();
          null !== oldFiber && !step.done;
          newIdx++, step = newChildren.next()
        ) {
          oldFiber.index > newIdx
            ? ((nextOldFiber = oldFiber), (oldFiber = null))
            : (nextOldFiber = oldFiber.sibling);
          var newFiber = updateSlot(returnFiber, oldFiber, step.value, lanes);
          if (null === newFiber) {
            null === oldFiber && (oldFiber = nextOldFiber);
            break;
          }
          knownKeys = warnOnInvalidKey(
            returnFiber,
            newFiber,
            step.value,
            knownKeys
          );
          shouldTrackSideEffects &&
            oldFiber &&
            null === newFiber.alternate &&
            deleteChild(returnFiber, oldFiber);
          currentFirstChild = placeChild(newFiber, currentFirstChild, newIdx);
          null === previousNewFiber
            ? (resultingFirstChild = newFiber)
            : (previousNewFiber.sibling = newFiber);
          previousNewFiber = newFiber;
          oldFiber = nextOldFiber;
        }
        if (step.done)
          return (
            deleteRemainingChildren(returnFiber, oldFiber),
            isHydrating && pushTreeFork(returnFiber, newIdx),
            resultingFirstChild
          );
        if (null === oldFiber) {
          for (; !step.done; newIdx++, step = newChildren.next())
            (oldFiber = createChild(returnFiber, step.value, lanes)),
              null !== oldFiber &&
                ((knownKeys = warnOnInvalidKey(
                  returnFiber,
                  oldFiber,
                  step.value,
                  knownKeys
                )),
                (currentFirstChild = placeChild(
                  oldFiber,
                  currentFirstChild,
                  newIdx
                )),
                null === previousNewFiber
                  ? (resultingFirstChild = oldFiber)
                  : (previousNewFiber.sibling = oldFiber),
                (previousNewFiber = oldFiber));
          isHydrating && pushTreeFork(returnFiber, newIdx);
          return resultingFirstChild;
        }
        for (
          oldFiber = mapRemainingChildren(oldFiber);
          !step.done;
          newIdx++, step = newChildren.next()
        )
          (nextOldFiber = updateFromMap(
            oldFiber,
            returnFiber,
            newIdx,
            step.value,
            lanes
          )),
            null !== nextOldFiber &&
              ((knownKeys = warnOnInvalidKey(
                returnFiber,
                nextOldFiber,
                step.value,
                knownKeys
              )),
              shouldTrackSideEffects &&
                null !== nextOldFiber.alternate &&
                oldFiber.delete(
                  null === nextOldFiber.key ? newIdx : nextOldFiber.key
                ),
              (currentFirstChild = placeChild(
                nextOldFiber,
                currentFirstChild,
                newIdx
              )),
              null === previousNewFiber
                ? (resultingFirstChild = nextOldFiber)
                : (previousNewFiber.sibling = nextOldFiber),
              (previousNewFiber = nextOldFiber));
        shouldTrackSideEffects &&
          oldFiber.forEach(function (child) {
            return deleteChild(returnFiber, child);
          });
        isHydrating && pushTreeFork(returnFiber, newIdx);
        return resultingFirstChild;
      }
      function reconcileChildFibersImpl(
        returnFiber,
        currentFirstChild,
        newChild,
        lanes
      ) {
        "object" === typeof newChild &&
          null !== newChild &&
          newChild.type === REACT_FRAGMENT_TYPE &&
          null === newChild.key &&
          (validateFragmentProps(newChild, null, returnFiber),
          (newChild = newChild.props.children));
        if ("object" === typeof newChild && null !== newChild) {
          switch (newChild.$$typeof) {
            case REACT_ELEMENT_TYPE:
              var prevDebugInfo = pushDebugInfo(newChild._debugInfo);
              a: {
                for (var key = newChild.key; null !== currentFirstChild; ) {
                  if (currentFirstChild.key === key) {
                    key = newChild.type;
                    if (key === REACT_FRAGMENT_TYPE) {
                      if (7 === currentFirstChild.tag) {
                        deleteRemainingChildren(
                          returnFiber,
                          currentFirstChild.sibling
                        );
                        lanes = useFiber(
                          currentFirstChild,
                          newChild.props.children
                        );
                        lanes.return = returnFiber;
                        lanes._debugOwner = newChild._owner;
                        lanes._debugInfo = currentDebugInfo;
                        validateFragmentProps(newChild, lanes, returnFiber);
                        returnFiber = lanes;
                        break a;
                      }
                    } else if (
                      currentFirstChild.elementType === key ||
                      isCompatibleFamilyForHotReloading(
                        currentFirstChild,
                        newChild
                      ) ||
                      ("object" === typeof key &&
                        null !== key &&
                        key.$$typeof === REACT_LAZY_TYPE &&
                        resolveLazy(key) === currentFirstChild.type)
                    ) {
                      deleteRemainingChildren(
                        returnFiber,
                        currentFirstChild.sibling
                      );
                      lanes = useFiber(currentFirstChild, newChild.props);
                      coerceRef(lanes, newChild);
                      lanes.return = returnFiber;
                      lanes._debugOwner = newChild._owner;
                      lanes._debugInfo = currentDebugInfo;
                      returnFiber = lanes;
                      break a;
                    }
                    deleteRemainingChildren(returnFiber, currentFirstChild);
                    break;
                  } else deleteChild(returnFiber, currentFirstChild);
                  currentFirstChild = currentFirstChild.sibling;
                }
                newChild.type === REACT_FRAGMENT_TYPE
                  ? ((lanes = createFiberFromFragment(
                      newChild.props.children,
                      returnFiber.mode,
                      lanes,
                      newChild.key
                    )),
                    (lanes.return = returnFiber),
                    (lanes._debugOwner = returnFiber),
                    (lanes._debugTask = returnFiber._debugTask),
                    (lanes._debugInfo = currentDebugInfo),
                    validateFragmentProps(newChild, lanes, returnFiber),
                    (returnFiber = lanes))
                  : ((lanes = createFiberFromElement(
                      newChild,
                      returnFiber.mode,
                      lanes
                    )),
                    coerceRef(lanes, newChild),
                    (lanes.return = returnFiber),
                    (lanes._debugInfo = currentDebugInfo),
                    (returnFiber = lanes));
              }
              returnFiber = placeSingleChild(returnFiber);
              currentDebugInfo = prevDebugInfo;
              return returnFiber;
            case REACT_PORTAL_TYPE:
              a: {
                prevDebugInfo = newChild;
                for (
                  newChild = prevDebugInfo.key;
                  null !== currentFirstChild;

                ) {
                  if (currentFirstChild.key === newChild)
                    if (
                      4 === currentFirstChild.tag &&
                      currentFirstChild.stateNode.containerInfo ===
                        prevDebugInfo.containerInfo &&
                      currentFirstChild.stateNode.implementation ===
                        prevDebugInfo.implementation
                    ) {
                      deleteRemainingChildren(
                        returnFiber,
                        currentFirstChild.sibling
                      );
                      lanes = useFiber(
                        currentFirstChild,
                        prevDebugInfo.children || []
                      );
                      lanes.return = returnFiber;
                      returnFiber = lanes;
                      break a;
                    } else {
                      deleteRemainingChildren(returnFiber, currentFirstChild);
                      break;
                    }
                  else deleteChild(returnFiber, currentFirstChild);
                  currentFirstChild = currentFirstChild.sibling;
                }
                lanes = createFiberFromPortal(
                  prevDebugInfo,
                  returnFiber.mode,
                  lanes
                );
                lanes.return = returnFiber;
                returnFiber = lanes;
              }
              return placeSingleChild(returnFiber);
            case REACT_LAZY_TYPE:
              return (
                (prevDebugInfo = pushDebugInfo(newChild._debugInfo)),
                (newChild = resolveLazy(newChild)),
                (returnFiber = reconcileChildFibersImpl(
                  returnFiber,
                  currentFirstChild,
                  newChild,
                  lanes
                )),
                (currentDebugInfo = prevDebugInfo),
                returnFiber
              );
          }
          if (isArrayImpl(newChild))
            return (
              (prevDebugInfo = pushDebugInfo(newChild._debugInfo)),
              (returnFiber = reconcileChildrenArray(
                returnFiber,
                currentFirstChild,
                newChild,
                lanes
              )),
              (currentDebugInfo = prevDebugInfo),
              returnFiber
            );
          if (getIteratorFn(newChild)) {
            prevDebugInfo = pushDebugInfo(newChild._debugInfo);
            key = getIteratorFn(newChild);
            if ("function" !== typeof key)
              throw Error(
                "An object is not an iterable. This error is likely caused by a bug in React. Please file an issue."
              );
            var newChildren = key.call(newChild);
            if (newChildren === newChild) {
              if (
                0 !== returnFiber.tag ||
                "[object GeneratorFunction]" !==
                  Object.prototype.toString.call(returnFiber.type) ||
                "[object Generator]" !==
                  Object.prototype.toString.call(newChildren)
              )
                didWarnAboutGenerators ||
                  console.error(
                    "Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items."
                  ),
                  (didWarnAboutGenerators = !0);
            } else
              newChild.entries !== key ||
                didWarnAboutMaps ||
                (console.error(
                  "Using Maps as children is not supported. Use an array of keyed ReactElements instead."
                ),
                (didWarnAboutMaps = !0));
            returnFiber = reconcileChildrenIterator(
              returnFiber,
              currentFirstChild,
              newChildren,
              lanes
            );
            currentDebugInfo = prevDebugInfo;
            return returnFiber;
          }
          if ("function" === typeof newChild.then)
            return (
              (prevDebugInfo = pushDebugInfo(newChild._debugInfo)),
              (returnFiber = reconcileChildFibersImpl(
                returnFiber,
                currentFirstChild,
                unwrapThenable(newChild),
                lanes
              )),
              (currentDebugInfo = prevDebugInfo),
              returnFiber
            );
          if (newChild.$$typeof === REACT_CONTEXT_TYPE)
            return reconcileChildFibersImpl(
              returnFiber,
              currentFirstChild,
              readContextDuringReconciliation(returnFiber, newChild),
              lanes
            );
          throwOnInvalidObjectType(returnFiber, newChild);
        }
        if (
          ("string" === typeof newChild && "" !== newChild) ||
          "number" === typeof newChild ||
          "bigint" === typeof newChild
        )
          return (
            (prevDebugInfo = "" + newChild),
            null !== currentFirstChild && 6 === currentFirstChild.tag
              ? (deleteRemainingChildren(
                  returnFiber,
                  currentFirstChild.sibling
                ),
                (lanes = useFiber(currentFirstChild, prevDebugInfo)),
                (lanes.return = returnFiber),
                (returnFiber = lanes))
              : (deleteRemainingChildren(returnFiber, currentFirstChild),
                (lanes = createFiberFromText(
                  prevDebugInfo,
                  returnFiber.mode,
                  lanes
                )),
                (lanes.return = returnFiber),
                (lanes._debugOwner = returnFiber),
                (lanes._debugTask = returnFiber._debugTask),
                (lanes._debugInfo = currentDebugInfo),
                (returnFiber = lanes)),
            placeSingleChild(returnFiber)
          );
        "function" === typeof newChild &&
          warnOnFunctionType(returnFiber, newChild);
        "symbol" === typeof newChild && warnOnSymbolType(returnFiber, newChild);
        return deleteRemainingChildren(returnFiber, currentFirstChild);
      }
      return function (returnFiber, currentFirstChild, newChild, lanes) {
        var prevDebugInfo = currentDebugInfo;
        currentDebugInfo = null;
        try {
          thenableIndexCounter$1 = 0;
          var firstChildFiber = reconcileChildFibersImpl(
            returnFiber,
            currentFirstChild,
            newChild,
            lanes
          );
          thenableState$1 = null;
          return firstChildFiber;
        } catch (x) {
          if (x === SuspenseException || x === SuspenseActionException) throw x;
          var fiber = createFiber(29, x, null, returnFiber.mode);
          fiber.lanes = lanes;
          fiber.return = returnFiber;
          var debugInfo = (fiber._debugInfo = currentDebugInfo);
          fiber._debugOwner = returnFiber._debugOwner;
          fiber._debugTask = returnFiber._debugTask;
          if (null != debugInfo)
            for (var i = debugInfo.length - 1; 0 <= i; i--)
              if ("string" === typeof debugInfo[i].stack) {
                fiber._debugOwner = debugInfo[i];
                fiber._debugTask = debugInfo[i].debugTask;
                break;
              }
          return fiber;
        } finally {
          currentDebugInfo = prevDebugInfo;
        }
      };
    }
    function validateSuspenseListNestedChild(childSlot, index) {
      var isAnArray = isArrayImpl(childSlot);
      childSlot = !isAnArray && "function" === typeof getIteratorFn(childSlot);
      return isAnArray || childSlot
        ? ((isAnArray = isAnArray ? "array" : "iterable"),
          console.error(
            "A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>",
            isAnArray,
            index,
            isAnArray
          ),
          !1)
        : !0;
    }
    function initializeUpdateQueue(fiber) {
      fiber.updateQueue = {
        baseState: fiber.memoizedState,
        firstBaseUpdate: null,
        lastBaseUpdate: null,
        shared: { pending: null, lanes: 0, hiddenCallbacks: null },
        callbacks: null
      };
    }
    function cloneUpdateQueue(current, workInProgress) {
      current = current.updateQueue;
      workInProgress.updateQueue === current &&
        (workInProgress.updateQueue = {
          baseState: current.baseState,
          firstBaseUpdate: current.firstBaseUpdate,
          lastBaseUpdate: current.lastBaseUpdate,
          shared: current.shared,
          callbacks: null
        });
    }
    function createUpdate(lane) {
      return {
        lane: lane,
        tag: UpdateState,
        payload: null,
        callback: null,
        next: null
      };
    }
    function enqueueUpdate(fiber, update, lane) {
      var updateQueue = fiber.updateQueue;
      if (null === updateQueue) return null;
      updateQueue = updateQueue.shared;
      if (
        currentlyProcessingQueue === updateQueue &&
        !didWarnUpdateInsideUpdate
      ) {
        var componentName = getComponentNameFromFiber(fiber);
        console.error(
          "An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback.\n\nPlease update the following component: %s",
          componentName
        );
        didWarnUpdateInsideUpdate = !0;
      }
      if ((executionContext & RenderContext) !== NoContext)
        return (
          (componentName = updateQueue.pending),
          null === componentName
            ? (update.next = update)
            : ((update.next = componentName.next),
              (componentName.next = update)),
          (updateQueue.pending = update),
          (update = getRootForUpdatedFiber(fiber)),
          markUpdateLaneFromFiberToRoot(fiber, null, lane),
          update
        );
      enqueueUpdate$1(fiber, updateQueue, update, lane);
      return getRootForUpdatedFiber(fiber);
    }
    function entangleTransitions(root, fiber, lane) {
      fiber = fiber.updateQueue;
      if (null !== fiber && ((fiber = fiber.shared), 0 !== (lane & 4194048))) {
        var queueLanes = fiber.lanes;
        queueLanes &= root.pendingLanes;
        lane |= queueLanes;
        fiber.lanes = lane;
        markRootEntangled(root, lane);
      }
    }
    function enqueueCapturedUpdate(workInProgress, capturedUpdate) {
      var queue = workInProgress.updateQueue,
        current = workInProgress.alternate;
      if (
        null !== current &&
        ((current = current.updateQueue), queue === current)
      ) {
        var newFirst = null,
          newLast = null;
        queue = queue.firstBaseUpdate;
        if (null !== queue) {
          do {
            var clone = {
              lane: queue.lane,
              tag: queue.tag,
              payload: queue.payload,
              callback: null,
              next: null
            };
            null === newLast
              ? (newFirst = newLast = clone)
              : (newLast = newLast.next = clone);
            queue = queue.next;
          } while (null !== queue);
          null === newLast
            ? (newFirst = newLast = capturedUpdate)
            : (newLast = newLast.next = capturedUpdate);
        } else newFirst = newLast = capturedUpdate;
        queue = {
          baseState: current.baseState,
          firstBaseUpdate: newFirst,
          lastBaseUpdate: newLast,
          shared: current.shared,
          callbacks: current.callbacks
        };
        workInProgress.updateQueue = queue;
        return;
      }
      workInProgress = queue.lastBaseUpdate;
      null === workInProgress
        ? (queue.firstBaseUpdate = capturedUpdate)
        : (workInProgress.next = capturedUpdate);
      queue.lastBaseUpdate = capturedUpdate;
    }
    function suspendIfUpdateReadFromEntangledAsyncAction() {
      if (didReadFromEntangledAsyncAction) {
        var entangledActionThenable = currentEntangledActionThenable;
        if (null !== entangledActionThenable) throw entangledActionThenable;
      }
    }
    function processUpdateQueue(
      workInProgress,
      props,
      instance$jscomp$0,
      renderLanes
    ) {
      didReadFromEntangledAsyncAction = !1;
      var queue = workInProgress.updateQueue;
      hasForceUpdate = !1;
      currentlyProcessingQueue = queue.shared;
      var firstBaseUpdate = queue.firstBaseUpdate,
        lastBaseUpdate = queue.lastBaseUpdate,
        pendingQueue = queue.shared.pending;
      if (null !== pendingQueue) {
        queue.shared.pending = null;
        var lastPendingUpdate = pendingQueue,
          firstPendingUpdate = lastPendingUpdate.next;
        lastPendingUpdate.next = null;
        null === lastBaseUpdate
          ? (firstBaseUpdate = firstPendingUpdate)
          : (lastBaseUpdate.next = firstPendingUpdate);
        lastBaseUpdate = lastPendingUpdate;
        var current = workInProgress.alternate;
        null !== current &&
          ((current = current.updateQueue),
          (pendingQueue = current.lastBaseUpdate),
          pendingQueue !== lastBaseUpdate &&
            (null === pendingQueue
              ? (current.firstBaseUpdate = firstPendingUpdate)
              : (pendingQueue.next = firstPendingUpdate),
            (current.lastBaseUpdate = lastPendingUpdate)));
      }
      if (null !== firstBaseUpdate) {
        var newState = queue.baseState;
        lastBaseUpdate = 0;
        current = firstPendingUpdate = lastPendingUpdate = null;
        pendingQueue = firstBaseUpdate;
        do {
          var updateLane = pendingQueue.lane & -536870913,
            isHiddenUpdate = updateLane !== pendingQueue.lane;
          if (
            isHiddenUpdate
              ? (workInProgressRootRenderLanes & updateLane) === updateLane
              : (renderLanes & updateLane) === updateLane
          ) {
            0 !== updateLane &&
              updateLane === currentEntangledLane &&
              (didReadFromEntangledAsyncAction = !0);
            null !== current &&
              (current = current.next =
                {
                  lane: 0,
                  tag: pendingQueue.tag,
                  payload: pendingQueue.payload,
                  callback: null,
                  next: null
                });
            a: {
              updateLane = workInProgress;
              var partialState = pendingQueue;
              var nextProps = props,
                instance = instance$jscomp$0;
              switch (partialState.tag) {
                case ReplaceState:
                  partialState = partialState.payload;
                  if ("function" === typeof partialState) {
                    isDisallowedContextReadInDEV = !0;
                    var nextState = partialState.call(
                      instance,
                      newState,
                      nextProps
                    );
                    if (updateLane.mode & StrictLegacyMode) {
                      setIsStrictModeForDevtools(!0);
                      try {
                        partialState.call(instance, newState, nextProps);
                      } finally {
                        setIsStrictModeForDevtools(!1);
                      }
                    }
                    isDisallowedContextReadInDEV = !1;
                    newState = nextState;
                    break a;
                  }
                  newState = partialState;
                  break a;
                case CaptureUpdate:
                  updateLane.flags = (updateLane.flags & -65537) | 128;
                case UpdateState:
                  nextState = partialState.payload;
                  if ("function" === typeof nextState) {
                    isDisallowedContextReadInDEV = !0;
                    partialState = nextState.call(
                      instance,
                      newState,
                      nextProps
                    );
                    if (updateLane.mode & StrictLegacyMode) {
                      setIsStrictModeForDevtools(!0);
                      try {
                        nextState.call(instance, newState, nextProps);
                      } finally {
                        setIsStrictModeForDevtools(!1);
                      }
                    }
                    isDisallowedContextReadInDEV = !1;
                  } else partialState = nextState;
                  if (null === partialState || void 0 === partialState) break a;
                  newState = assign({}, newState, partialState);
                  break a;
                case ForceUpdate:
                  hasForceUpdate = !0;
              }
            }
            updateLane = pendingQueue.callback;
            null !== updateLane &&
              ((workInProgress.flags |= 64),
              isHiddenUpdate && (workInProgress.flags |= 8192),
              (isHiddenUpdate = queue.callbacks),
              null === isHiddenUpdate
                ? (queue.callbacks = [updateLane])
                : isHiddenUpdate.push(updateLane));
          } else
            (isHiddenUpdate = {
              lane: updateLane,
              tag: pendingQueue.tag,
              payload: pendingQueue.payload,
              callback: pendingQueue.callback,
              next: null
            }),
              null === current
                ? ((firstPendingUpdate = current = isHiddenUpdate),
                  (lastPendingUpdate = newState))
                : (current = current.next = isHiddenUpdate),
              (lastBaseUpdate |= updateLane);
          pendingQueue = pendingQueue.next;
          if (null === pendingQueue)
            if (((pendingQueue = queue.shared.pending), null === pendingQueue))
              break;
            else
              (isHiddenUpdate = pendingQueue),
                (pendingQueue = isHiddenUpdate.next),
                (isHiddenUpdate.next = null),
                (queue.lastBaseUpdate = isHiddenUpdate),
                (queue.shared.pending = null);
        } while (1);
        null === current && (lastPendingUpdate = newState);
        queue.baseState = lastPendingUpdate;
        queue.firstBaseUpdate = firstPendingUpdate;
        queue.lastBaseUpdate = current;
        null === firstBaseUpdate && (queue.shared.lanes = 0);
        workInProgressRootSkippedLanes |= lastBaseUpdate;
        workInProgress.lanes = lastBaseUpdate;
        workInProgress.memoizedState = newState;
      }
      currentlyProcessingQueue = null;
    }
    function callCallback(callback, context) {
      if ("function" !== typeof callback)
        throw Error(
          "Invalid argument passed as callback. Expected a function. Instead received: " +
            callback
        );
      callback.call(context);
    }
    function commitHiddenCallbacks(updateQueue, context) {
      var hiddenCallbacks = updateQueue.shared.hiddenCallbacks;
      if (null !== hiddenCallbacks)
        for (
          updateQueue.shared.hiddenCallbacks = null, updateQueue = 0;
          updateQueue < hiddenCallbacks.length;
          updateQueue++
        )
          callCallback(hiddenCallbacks[updateQueue], context);
    }
    function commitCallbacks(updateQueue, context) {
      var callbacks = updateQueue.callbacks;
      if (null !== callbacks)
        for (
          updateQueue.callbacks = null, updateQueue = 0;
          updateQueue < callbacks.length;
          updateQueue++
        )
          callCallback(callbacks[updateQueue], context);
    }
    function pushHiddenContext(fiber, context) {
      var prevEntangledRenderLanes = entangledRenderLanes;
      push(prevEntangledRenderLanesCursor, prevEntangledRenderLanes, fiber);
      push(currentTreeHiddenStackCursor, context, fiber);
      entangledRenderLanes = prevEntangledRenderLanes | context.baseLanes;
    }
    function reuseHiddenContextOnStack(fiber) {
      push(prevEntangledRenderLanesCursor, entangledRenderLanes, fiber);
      push(
        currentTreeHiddenStackCursor,
        currentTreeHiddenStackCursor.current,
        fiber
      );
    }
    function popHiddenContext(fiber) {
      entangledRenderLanes = prevEntangledRenderLanesCursor.current;
      pop(currentTreeHiddenStackCursor, fiber);
      pop(prevEntangledRenderLanesCursor, fiber);
    }
    function pushPrimaryTreeSuspenseHandler(handler) {
      var current = handler.alternate;
      push(
        suspenseStackCursor,
        suspenseStackCursor.current & SubtreeSuspenseContextMask,
        handler
      );
      push(suspenseHandlerStackCursor, handler, handler);
      null === shellBoundary &&
        (null === current || null !== currentTreeHiddenStackCursor.current
          ? (shellBoundary = handler)
          : null !== current.memoizedState && (shellBoundary = handler));
    }
    function pushDehydratedActivitySuspenseHandler(fiber) {
      push(suspenseStackCursor, suspenseStackCursor.current, fiber);
      push(suspenseHandlerStackCursor, fiber, fiber);
      null === shellBoundary && (shellBoundary = fiber);
    }
    function pushOffscreenSuspenseHandler(fiber) {
      22 === fiber.tag
        ? (push(suspenseStackCursor, suspenseStackCursor.current, fiber),
          push(suspenseHandlerStackCursor, fiber, fiber),
          null === shellBoundary && (shellBoundary = fiber))
        : reuseSuspenseHandlerOnStack(fiber);
    }
    function reuseSuspenseHandlerOnStack(fiber) {
      push(suspenseStackCursor, suspenseStackCursor.current, fiber);
      push(
        suspenseHandlerStackCursor,
        suspenseHandlerStackCursor.current,
        fiber
      );
    }
    function popSuspenseHandler(fiber) {
      pop(suspenseHandlerStackCursor, fiber);
      shellBoundary === fiber && (shellBoundary = null);
      pop(suspenseStackCursor, fiber);
    }
    function findFirstSuspended(row) {
      for (var node = row; null !== node; ) {
        if (13 === node.tag) {
          var state = node.memoizedState;
          if (
            null !== state &&
            ((state = state.dehydrated),
            null === state ||
              isSuspenseInstancePending(state) ||
              isSuspenseInstanceFallback(state))
          )
            return node;
        } else if (
          19 === node.tag &&
          ("forwards" === node.memoizedProps.revealOrder ||
            "backwards" === node.memoizedProps.revealOrder ||
            "unstable_legacy-backwards" === node.memoizedProps.revealOrder ||
            "together" === node.memoizedProps.revealOrder)
        ) {
          if (0 !== (node.flags & 128)) return node;
        } else if (null !== node.child) {
          node.child.return = node;
          node = node.child;
          continue;
        }
        if (node === row) break;
        for (; null === node.sibling; ) {
          if (null === node.return || node.return === row) return null;
          node = node.return;
        }
        node.sibling.return = node.return;
        node = node.sibling;
      }
      return null;
    }
    function mountHookTypesDev() {
      var hookName = currentHookNameInDev;
      null === hookTypesDev
        ? (hookTypesDev = [hookName])
        : hookTypesDev.push(hookName);
    }
    function updateHookTypesDev() {
      var hookName = currentHookNameInDev;
      if (
        null !== hookTypesDev &&
        (hookTypesUpdateIndexDev++,
        hookTypesDev[hookTypesUpdateIndexDev] !== hookName)
      ) {
        var componentName = getComponentNameFromFiber(currentlyRenderingFiber);
        if (
          !didWarnAboutMismatchedHooksForComponent.has(componentName) &&
          (didWarnAboutMismatchedHooksForComponent.add(componentName),
          null !== hookTypesDev)
        ) {
          for (var table = "", i = 0; i <= hookTypesUpdateIndexDev; i++) {
            var oldHookName = hookTypesDev[i],
              newHookName =
                i === hookTypesUpdateIndexDev ? hookName : oldHookName;
            for (
              oldHookName = i + 1 + ". " + oldHookName;
              30 > oldHookName.length;

            )
              oldHookName += " ";
            oldHookName += newHookName + "\n";
            table += oldHookName;
          }
          console.error(
            "React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://react.dev/link/rules-of-hooks\n\n   Previous render            Next render\n   ------------------------------------------------------\n%s   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\n",
            componentName,
            table
          );
        }
      }
    }
    function checkDepsAreArrayDev(deps) {
      void 0 === deps ||
        null === deps ||
        isArrayImpl(deps) ||
        console.error(
          "%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.",
          currentHookNameInDev,
          typeof deps
        );
    }
    function warnOnUseFormStateInDev() {
      var componentName = getComponentNameFromFiber(currentlyRenderingFiber);
      didWarnAboutUseFormState.has(componentName) ||
        (didWarnAboutUseFormState.add(componentName),
        console.error(
          "ReactDOM.useFormState has been renamed to React.useActionState. Please update %s to use React.useActionState.",
          componentName
        ));
    }
    function throwInvalidHookError() {
      throw Error(
        "Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem."
      );
    }
    function areHookInputsEqual(nextDeps, prevDeps) {
      if (ignorePreviousDependencies) return !1;
      if (null === prevDeps)
        return (
          console.error(
            "%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.",
            currentHookNameInDev
          ),
          !1
        );
      nextDeps.length !== prevDeps.length &&
        console.error(
          "The final argument passed to %s changed size between renders. The order and size of this array must remain constant.\n\nPrevious: %s\nIncoming: %s",
          currentHookNameInDev,
          "[" + prevDeps.join(", ") + "]",
          "[" + nextDeps.join(", ") + "]"
        );
      for (var i = 0; i < prevDeps.length && i < nextDeps.length; i++)
        if (!objectIs(nextDeps[i], prevDeps[i])) return !1;
      return !0;
    }
    function renderWithHooks(
      current,
      workInProgress,
      Component,
      props,
      secondArg,
      nextRenderLanes
    ) {
      renderLanes = nextRenderLanes;
      currentlyRenderingFiber = workInProgress;
      hookTypesDev = null !== current ? current._debugHookTypes : null;
      hookTypesUpdateIndexDev = -1;
      ignorePreviousDependencies =
        null !== current && current.type !== workInProgress.type;
      if (
        "[object AsyncFunction]" ===
          Object.prototype.toString.call(Component) ||
        "[object AsyncGeneratorFunction]" ===
          Object.prototype.toString.call(Component)
      )
        (nextRenderLanes = getComponentNameFromFiber(currentlyRenderingFiber)),
          didWarnAboutAsyncClientComponent.has(nextRenderLanes) ||
            (didWarnAboutAsyncClientComponent.add(nextRenderLanes),
            console.error(
              "%s is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.",
              null === nextRenderLanes
                ? "An unknown Component"
                : "<" + nextRenderLanes + ">"
            ));
      workInProgress.memoizedState = null;
      workInProgress.updateQueue = null;
      workInProgress.lanes = 0;
      ReactSharedInternals.H =
        null !== current && null !== current.memoizedState
          ? HooksDispatcherOnUpdateInDEV
          : null !== hookTypesDev
            ? HooksDispatcherOnMountWithHookTypesInDEV
            : HooksDispatcherOnMountInDEV;
      shouldDoubleInvokeUserFnsInHooksDEV = nextRenderLanes =
        (workInProgress.mode & StrictLegacyMode) !== NoMode;
      var children = callComponentInDEV(Component, props, secondArg);
      shouldDoubleInvokeUserFnsInHooksDEV = !1;
      didScheduleRenderPhaseUpdateDuringThisPass &&
        (children = renderWithHooksAgain(
          workInProgress,
          Component,
          props,
          secondArg
        ));
      if (nextRenderLanes) {
        setIsStrictModeForDevtools(!0);
        try {
          children = renderWithHooksAgain(
            workInProgress,
            Component,
            props,
            secondArg
          );
        } finally {
          setIsStrictModeForDevtools(!1);
        }
      }
      finishRenderingHooks(current, workInProgress);
      return children;
    }
    function finishRenderingHooks(current, workInProgress) {
      workInProgress._debugHookTypes = hookTypesDev;
      null === workInProgress.dependencies
        ? null !== thenableState &&
          (workInProgress.dependencies = {
            lanes: 0,
            firstContext: null,
            _debugThenableState: thenableState
          })
        : (workInProgress.dependencies._debugThenableState = thenableState);
      ReactSharedInternals.H = ContextOnlyDispatcher;
      var didRenderTooFewHooks =
        null !== currentHook && null !== currentHook.next;
      renderLanes = 0;
      hookTypesDev =
        currentHookNameInDev =
        workInProgressHook =
        currentHook =
        currentlyRenderingFiber =
          null;
      hookTypesUpdateIndexDev = -1;
      null !== current &&
        (current.flags & 65011712) !== (workInProgress.flags & 65011712) &&
        console.error(
          "Internal React error: Expected static flag was missing. Please notify the React team."
        );
      didScheduleRenderPhaseUpdate = !1;
      thenableIndexCounter = 0;
      thenableState = null;
      if (didRenderTooFewHooks)
        throw Error(
          "Rendered fewer hooks than expected. This may be caused by an accidental early return statement."
        );
      null === current ||
        didReceiveUpdate ||
        ((current = current.dependencies),
        null !== current &&
          checkIfContextChanged(current) &&
          (didReceiveUpdate = !0));
      needsToResetSuspendedThenableDEV
        ? ((needsToResetSuspendedThenableDEV = !1), (current = !0))
        : (current = !1);
      current &&
        ((workInProgress =
          getComponentNameFromFiber(workInProgress) || "Unknown"),
        didWarnAboutUseWrappedInTryCatch.has(workInProgress) ||
          didWarnAboutAsyncClientComponent.has(workInProgress) ||
          (didWarnAboutUseWrappedInTryCatch.add(workInProgress),
          console.error(
            "`use` was called from inside a try/catch block. This is not allowed and can lead to unexpected behavior. To handle errors triggered by `use`, wrap your component in a error boundary."
          )));
    }
    function renderWithHooksAgain(workInProgress, Component, props, secondArg) {
      currentlyRenderingFiber = workInProgress;
      var numberOfReRenders = 0;
      do {
        didScheduleRenderPhaseUpdateDuringThisPass && (thenableState = null);
        thenableIndexCounter = 0;
        didScheduleRenderPhaseUpdateDuringThisPass = !1;
        if (numberOfReRenders >= RE_RENDER_LIMIT)
          throw Error(
            "Too many re-renders. React limits the number of renders to prevent an infinite loop."
          );
        numberOfReRenders += 1;
        ignorePreviousDependencies = !1;
        workInProgressHook = currentHook = null;
        if (null != workInProgress.updateQueue) {
          var children = workInProgress.updateQueue;
          children.lastEffect = null;
          children.events = null;
          children.stores = null;
          null != children.memoCache && (children.memoCache.index = 0);
        }
        hookTypesUpdateIndexDev = -1;
        ReactSharedInternals.H = HooksDispatcherOnRerenderInDEV;
        children = callComponentInDEV(Component, props, secondArg);
      } while (didScheduleRenderPhaseUpdateDuringThisPass);
      return children;
    }
    function TransitionAwareHostComponent() {
      var dispatcher = ReactSharedInternals.H,
        maybeThenable = dispatcher.useState()[0];
      maybeThenable =
        "function" === typeof maybeThenable.then
          ? useThenable(maybeThenable)
          : maybeThenable;
      dispatcher = dispatcher.useState()[0];
      (null !== currentHook ? currentHook.memoizedState : null) !==
        dispatcher && (currentlyRenderingFiber.flags |= 1024);
      return maybeThenable;
    }
    function checkDidRenderIdHook() {
      var didRenderIdHook = 0 !== localIdCounter;
      localIdCounter = 0;
      return didRenderIdHook;
    }
    function bailoutHooks(current, workInProgress, lanes) {
      workInProgress.updateQueue = current.updateQueue;
      workInProgress.flags =
        (workInProgress.mode & StrictEffectsMode) !== NoMode
          ? workInProgress.flags & -402655237
          : workInProgress.flags & -2053;
      current.lanes &= ~lanes;
    }
    function resetHooksOnUnwind(workInProgress) {
      if (didScheduleRenderPhaseUpdate) {
        for (
          workInProgress = workInProgress.memoizedState;
          null !== workInProgress;

        ) {
          var queue = workInProgress.queue;
          null !== queue && (queue.pending = null);
          workInProgress = workInProgress.next;
        }
        didScheduleRenderPhaseUpdate = !1;
      }
      renderLanes = 0;
      hookTypesDev =
        workInProgressHook =
        currentHook =
        currentlyRenderingFiber =
          null;
      hookTypesUpdateIndexDev = -1;
      currentHookNameInDev = null;
      didScheduleRenderPhaseUpdateDuringThisPass = !1;
      thenableIndexCounter = localIdCounter = 0;
      thenableState = null;
    }
    function mountWorkInProgressHook() {
      var hook = {
        memoizedState: null,
        baseState: null,
        baseQueue: null,
        queue: null,
        next: null
      };
      null === workInProgressHook
        ? (currentlyRenderingFiber.memoizedState = workInProgressHook = hook)
        : (workInProgressHook = workInProgressHook.next = hook);
      return workInProgressHook;
    }
    function updateWorkInProgressHook() {
      if (null === currentHook) {
        var nextCurrentHook = currentlyRenderingFiber.alternate;
        nextCurrentHook =
          null !== nextCurrentHook ? nextCurrentHook.memoizedState : null;
      } else nextCurrentHook = currentHook.next;
      var nextWorkInProgressHook =
        null === workInProgressHook
          ? currentlyRenderingFiber.memoizedState
          : workInProgressHook.next;
      if (null !== nextWorkInProgressHook)
        (workInProgressHook = nextWorkInProgressHook),
          (currentHook = nextCurrentHook);
      else {
        if (null === nextCurrentHook) {
          if (null === currentlyRenderingFiber.alternate)
            throw Error(
              "Update hook called on initial render. This is likely a bug in React. Please file an issue."
            );
          throw Error("Rendered more hooks than during the previous render.");
        }
        currentHook = nextCurrentHook;
        nextCurrentHook = {
          memoizedState: currentHook.memoizedState,
          baseState: currentHook.baseState,
          baseQueue: currentHook.baseQueue,
          queue: currentHook.queue,
          next: null
        };
        null === workInProgressHook
          ? (currentlyRenderingFiber.memoizedState = workInProgressHook =
              nextCurrentHook)
          : (workInProgressHook = workInProgressHook.next = nextCurrentHook);
      }
      return workInProgressHook;
    }
    function createFunctionComponentUpdateQueue() {
      return { lastEffect: null, events: null, stores: null, memoCache: null };
    }
    function useThenable(thenable) {
      var index = thenableIndexCounter;
      thenableIndexCounter += 1;
      null === thenableState && (thenableState = createThenableState());
      thenable = trackUsedThenable(thenableState, thenable, index);
      index = currentlyRenderingFiber;
      null ===
        (null === workInProgressHook
          ? index.memoizedState
          : workInProgressHook.next) &&
        ((index = index.alternate),
        (ReactSharedInternals.H =
          null !== index && null !== index.memoizedState
            ? HooksDispatcherOnUpdateInDEV
            : HooksDispatcherOnMountInDEV));
      return thenable;
    }
    function use(usable) {
      if (null !== usable && "object" === typeof usable) {
        if ("function" === typeof usable.then) return useThenable(usable);
        if (usable.$$typeof === REACT_CONTEXT_TYPE) return readContext(usable);
      }
      throw Error("An unsupported type was passed to use(): " + String(usable));
    }
    function useMemoCache(size) {
      var memoCache = null,
        updateQueue = currentlyRenderingFiber.updateQueue;
      null !== updateQueue && (memoCache = updateQueue.memoCache);
      if (null == memoCache) {
        var current = currentlyRenderingFiber.alternate;
        null !== current &&
          ((current = current.updateQueue),
          null !== current &&
            ((current = current.memoCache),
            null != current &&
              (memoCache = {
                data: current.data.map(function (array) {
                  return array.slice();
                }),
                index: 0
              })));
      }
      null == memoCache && (memoCache = { data: [], index: 0 });
      null === updateQueue &&
        ((updateQueue = createFunctionComponentUpdateQueue()),
        (currentlyRenderingFiber.updateQueue = updateQueue));
      updateQueue.memoCache = memoCache;
      updateQueue = memoCache.data[memoCache.index];
      if (void 0 === updateQueue || ignorePreviousDependencies)
        for (
          updateQueue = memoCache.data[memoCache.index] = Array(size),
            current = 0;
          current < size;
          current++
        )
          updateQueue[current] = REACT_MEMO_CACHE_SENTINEL;
      else
        updateQueue.length !== size &&
          console.error(
            "Expected a constant size argument for each invocation of useMemoCache. The previous cache was allocated with size %s but size %s was requested.",
            updateQueue.length,
            size
          );
      memoCache.index++;
      return updateQueue;
    }
    function basicStateReducer(state, action) {
      return "function" === typeof action ? action(state) : action;
    }
    function mountReducer(reducer, initialArg, init) {
      var hook = mountWorkInProgressHook();
      if (void 0 !== init) {
        var initialState = init(initialArg);
        if (shouldDoubleInvokeUserFnsInHooksDEV) {
          setIsStrictModeForDevtools(!0);
          try {
            init(initialArg);
          } finally {
            setIsStrictModeForDevtools(!1);
          }
        }
      } else initialState = initialArg;
      hook.memoizedState = hook.baseState = initialState;
      reducer = {
        pending: null,
        lanes: 0,
        dispatch: null,
        lastRenderedReducer: reducer,
        lastRenderedState: initialState
      };
      hook.queue = reducer;
      reducer = reducer.dispatch = dispatchReducerAction.bind(
        null,
        currentlyRenderingFiber,
        reducer
      );
      return [hook.memoizedState, reducer];
    }
    function updateReducer(reducer) {
      var hook = updateWorkInProgressHook();
      return updateReducerImpl(hook, currentHook, reducer);
    }
    function updateReducerImpl(hook, current, reducer) {
      var queue = hook.queue;
      if (null === queue)
        throw Error(
          "Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)"
        );
      queue.lastRenderedReducer = reducer;
      var baseQueue = hook.baseQueue,
        pendingQueue = queue.pending;
      if (null !== pendingQueue) {
        if (null !== baseQueue) {
          var baseFirst = baseQueue.next;
          baseQueue.next = pendingQueue.next;
          pendingQueue.next = baseFirst;
        }
        current.baseQueue !== baseQueue &&
          console.error(
            "Internal error: Expected work-in-progress queue to be a clone. This is a bug in React."
          );
        current.baseQueue = baseQueue = pendingQueue;
        queue.pending = null;
      }
      pendingQueue = hook.baseState;
      if (null === baseQueue) hook.memoizedState = pendingQueue;
      else {
        current = baseQueue.next;
        var newBaseQueueFirst = (baseFirst = null),
          newBaseQueueLast = null,
          update = current,
          didReadFromEntangledAsyncAction = !1;
        do {
          var updateLane = update.lane & -536870913;
          if (
            updateLane !== update.lane
              ? (workInProgressRootRenderLanes & updateLane) === updateLane
              : (renderLanes & updateLane) === updateLane
          ) {
            var revertLane = update.revertLane;
            if (0 === revertLane)
              null !== newBaseQueueLast &&
                (newBaseQueueLast = newBaseQueueLast.next =
                  {
                    lane: 0,
                    revertLane: 0,
                    gesture: null,
                    action: update.action,
                    hasEagerState: update.hasEagerState,
                    eagerState: update.eagerState,
                    next: null
                  }),
                updateLane === currentEntangledLane &&
                  (didReadFromEntangledAsyncAction = !0);
            else if ((renderLanes & revertLane) === revertLane) {
              update = update.next;
              revertLane === currentEntangledLane &&
                (didReadFromEntangledAsyncAction = !0);
              continue;
            } else
              (updateLane = {
                lane: 0,
                revertLane: update.revertLane,
                gesture: null,
                action: update.action,
                hasEagerState: update.hasEagerState,
                eagerState: update.eagerState,
                next: null
              }),
                null === newBaseQueueLast
                  ? ((newBaseQueueFirst = newBaseQueueLast = updateLane),
                    (baseFirst = pendingQueue))
                  : (newBaseQueueLast = newBaseQueueLast.next = updateLane),
                (currentlyRenderingFiber.lanes |= revertLane),
                (workInProgressRootSkippedLanes |= revertLane);
            updateLane = update.action;
            shouldDoubleInvokeUserFnsInHooksDEV &&
              reducer(pendingQueue, updateLane);
            pendingQueue = update.hasEagerState
              ? update.eagerState
              : reducer(pendingQueue, updateLane);
          } else
            (revertLane = {
              lane: updateLane,
              revertLane: update.revertLane,
              gesture: update.gesture,
              action: update.action,
              hasEagerState: update.hasEagerState,
              eagerState: update.eagerState,
              next: null
            }),
              null === newBaseQueueLast
                ? ((newBaseQueueFirst = newBaseQueueLast = revertLane),
                  (baseFirst = pendingQueue))
                : (newBaseQueueLast = newBaseQueueLast.next = revertLane),
              (currentlyRenderingFiber.lanes |= updateLane),
              (workInProgressRootSkippedLanes |= updateLane);
          update = update.next;
        } while (null !== update && update !== current);
        null === newBaseQueueLast
          ? (baseFirst = pendingQueue)
          : (newBaseQueueLast.next = newBaseQueueFirst);
        if (
          !objectIs(pendingQueue, hook.memoizedState) &&
          ((didReceiveUpdate = !0),
          didReadFromEntangledAsyncAction &&
            ((reducer = currentEntangledActionThenable), null !== reducer))
        )
          throw reducer;
        hook.memoizedState = pendingQueue;
        hook.baseState = baseFirst;
        hook.baseQueue = newBaseQueueLast;
        queue.lastRenderedState = pendingQueue;
      }
      null === baseQueue && (queue.lanes = 0);
      return [hook.memoizedState, queue.dispatch];
    }
    function rerenderReducer(reducer) {
      var hook = updateWorkInProgressHook(),
        queue = hook.queue;
      if (null === queue)
        throw Error(
          "Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)"
        );
      queue.lastRenderedReducer = reducer;
      var dispatch = queue.dispatch,
        lastRenderPhaseUpdate = queue.pending,
        newState = hook.memoizedState;
      if (null !== lastRenderPhaseUpdate) {
        queue.pending = null;
        var update = (lastRenderPhaseUpdate = lastRenderPhaseUpdate.next);
        do
          (newState = reducer(newState, update.action)), (update = update.next);
        while (update !== lastRenderPhaseUpdate);
        objectIs(newState, hook.memoizedState) || (didReceiveUpdate = !0);
        hook.memoizedState = newState;
        null === hook.baseQueue && (hook.baseState = newState);
        queue.lastRenderedState = newState;
      }
      return [newState, dispatch];
    }
    function mountSyncExternalStore(subscribe, getSnapshot, getServerSnapshot) {
      var fiber = currentlyRenderingFiber,
        hook = mountWorkInProgressHook();
      if (isHydrating) {
        if (void 0 === getServerSnapshot)
          throw Error(
            "Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering."
          );
        var nextSnapshot = getServerSnapshot();
        didWarnUncachedGetSnapshot ||
          nextSnapshot === getServerSnapshot() ||
          (console.error(
            "The result of getServerSnapshot should be cached to avoid an infinite loop"
          ),
          (didWarnUncachedGetSnapshot = !0));
      } else {
        nextSnapshot = getSnapshot();
        didWarnUncachedGetSnapshot ||
          ((getServerSnapshot = getSnapshot()),
          objectIs(nextSnapshot, getServerSnapshot) ||
            (console.error(
              "The result of getSnapshot should be cached to avoid an infinite loop"
            ),
            (didWarnUncachedGetSnapshot = !0)));
        if (null === workInProgressRoot)
          throw Error(
            "Expected a work-in-progress root. This is a bug in React. Please file an issue."
          );
        0 !== (workInProgressRootRenderLanes & 127) ||
          pushStoreConsistencyCheck(fiber, getSnapshot, nextSnapshot);
      }
      hook.memoizedState = nextSnapshot;
      getServerSnapshot = { value: nextSnapshot, getSnapshot: getSnapshot };
      hook.queue = getServerSnapshot;
      mountEffect(
        subscribeToStore.bind(null, fiber, getServerSnapshot, subscribe),
        [subscribe]
      );
      fiber.flags |= 2048;
      pushSimpleEffect(
        HasEffect | Passive,
        { destroy: void 0 },
        updateStoreInstance.bind(
          null,
          fiber,
          getServerSnapshot,
          nextSnapshot,
          getSnapshot
        ),
        null
      );
      return nextSnapshot;
    }
    function updateSyncExternalStore(
      subscribe,
      getSnapshot,
      getServerSnapshot
    ) {
      var fiber = currentlyRenderingFiber,
        hook = updateWorkInProgressHook(),
        isHydrating$jscomp$0 = isHydrating;
      if (isHydrating$jscomp$0) {
        if (void 0 === getServerSnapshot)
          throw Error(
            "Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering."
          );
        getServerSnapshot = getServerSnapshot();
      } else if (
        ((getServerSnapshot = getSnapshot()), !didWarnUncachedGetSnapshot)
      ) {
        var cachedSnapshot = getSnapshot();
        objectIs(getServerSnapshot, cachedSnapshot) ||
          (console.error(
            "The result of getSnapshot should be cached to avoid an infinite loop"
          ),
          (didWarnUncachedGetSnapshot = !0));
      }
      if (
        (cachedSnapshot = !objectIs(
          (currentHook || hook).memoizedState,
          getServerSnapshot
        ))
      )
        (hook.memoizedState = getServerSnapshot), (didReceiveUpdate = !0);
      hook = hook.queue;
      var create = subscribeToStore.bind(null, fiber, hook, subscribe);
      updateEffectImpl(2048, Passive, create, [subscribe]);
      if (
        hook.getSnapshot !== getSnapshot ||
        cachedSnapshot ||
        (null !== workInProgressHook &&
          workInProgressHook.memoizedState.tag & HasEffect)
      ) {
        fiber.flags |= 2048;
        pushSimpleEffect(
          HasEffect | Passive,
          { destroy: void 0 },
          updateStoreInstance.bind(
            null,
            fiber,
            hook,
            getServerSnapshot,
            getSnapshot
          ),
          null
        );
        if (null === workInProgressRoot)
          throw Error(
            "Expected a work-in-progress root. This is a bug in React. Please file an issue."
          );
        isHydrating$jscomp$0 ||
          0 !== (renderLanes & 127) ||
          pushStoreConsistencyCheck(fiber, getSnapshot, getServerSnapshot);
      }
      return getServerSnapshot;
    }
    function pushStoreConsistencyCheck(fiber, getSnapshot, renderedSnapshot) {
      fiber.flags |= 16384;
      fiber = { getSnapshot: getSnapshot, value: renderedSnapshot };
      getSnapshot = currentlyRenderingFiber.updateQueue;
      null === getSnapshot
        ? ((getSnapshot = createFunctionComponentUpdateQueue()),
          (currentlyRenderingFiber.updateQueue = getSnapshot),
          (getSnapshot.stores = [fiber]))
        : ((renderedSnapshot = getSnapshot.stores),
          null === renderedSnapshot
            ? (getSnapshot.stores = [fiber])
            : renderedSnapshot.push(fiber));
    }
    function updateStoreInstance(fiber, inst, nextSnapshot, getSnapshot) {
      inst.value = nextSnapshot;
      inst.getSnapshot = getSnapshot;
      checkIfSnapshotChanged(inst) && forceStoreRerender(fiber);
    }
    function subscribeToStore(fiber, inst, subscribe) {
      return subscribe(function () {
        checkIfSnapshotChanged(inst) &&
          (startUpdateTimerByLane(2, "updateSyncExternalStore()", fiber),
          forceStoreRerender(fiber));
      });
    }
    function checkIfSnapshotChanged(inst) {
      var latestGetSnapshot = inst.getSnapshot;
      inst = inst.value;
      try {
        var nextValue = latestGetSnapshot();
        return !objectIs(inst, nextValue);
      } catch (error) {
        return !0;
      }
    }
    function forceStoreRerender(fiber) {
      var root = enqueueConcurrentRenderForLane(fiber, 2);
      null !== root && scheduleUpdateOnFiber(root, fiber, 2);
    }
    function mountStateImpl(initialState) {
      var hook = mountWorkInProgressHook();
      if ("function" === typeof initialState) {
        var initialStateInitializer = initialState;
        initialState = initialStateInitializer();
        if (shouldDoubleInvokeUserFnsInHooksDEV) {
          setIsStrictModeForDevtools(!0);
          try {
            initialStateInitializer();
          } finally {
            setIsStrictModeForDevtools(!1);
          }
        }
      }
      hook.memoizedState = hook.baseState = initialState;
      hook.queue = {
        pending: null,
        lanes: 0,
        dispatch: null,
        lastRenderedReducer: basicStateReducer,
        lastRenderedState: initialState
      };
      return hook;
    }
    function mountState(initialState) {
      initialState = mountStateImpl(initialState);
      var queue = initialState.queue,
        dispatch = dispatchSetState.bind(null, currentlyRenderingFiber, queue);
      queue.dispatch = dispatch;
      return [initialState.memoizedState, dispatch];
    }
    function mountOptimistic(passthrough) {
      var hook = mountWorkInProgressHook();
      hook.memoizedState = hook.baseState = passthrough;
      var queue = {
        pending: null,
        lanes: 0,
        dispatch: null,
        lastRenderedReducer: null,
        lastRenderedState: null
      };
      hook.queue = queue;
      hook = dispatchOptimisticSetState.bind(
        null,
        currentlyRenderingFiber,
        !0,
        queue
      );
      queue.dispatch = hook;
      return [passthrough, hook];
    }
    function updateOptimistic(passthrough, reducer) {
      var hook = updateWorkInProgressHook();
      return updateOptimisticImpl(hook, currentHook, passthrough, reducer);
    }
    function updateOptimisticImpl(hook, current, passthrough, reducer) {
      hook.baseState = passthrough;
      return updateReducerImpl(
        hook,
        currentHook,
        "function" === typeof reducer ? reducer : basicStateReducer
      );
    }
    function rerenderOptimistic(passthrough, reducer) {
      var hook = updateWorkInProgressHook();
      if (null !== currentHook)
        return updateOptimisticImpl(hook, currentHook, passthrough, reducer);
      hook.baseState = passthrough;
      return [passthrough, hook.queue.dispatch];
    }
    function dispatchActionState(
      fiber,
      actionQueue,
      setPendingState,
      setState,
      payload
    ) {
      if (isRenderPhaseUpdate(fiber))
        throw Error("Cannot update form state while rendering.");
      fiber = actionQueue.action;
      if (null !== fiber) {
        var actionNode = {
          payload: payload,
          action: fiber,
          next: null,
          isTransition: !0,
          status: "pending",
          value: null,
          reason: null,
          listeners: [],
          then: function (listener) {
            actionNode.listeners.push(listener);
          }
        };
        null !== ReactSharedInternals.T
          ? setPendingState(!0)
          : (actionNode.isTransition = !1);
        setState(actionNode);
        setPendingState = actionQueue.pending;
        null === setPendingState
          ? ((actionNode.next = actionQueue.pending = actionNode),
            runActionStateAction(actionQueue, actionNode))
          : ((actionNode.next = setPendingState.next),
            (actionQueue.pending = setPendingState.next = actionNode));
      }
    }
    function runActionStateAction(actionQueue, node) {
      var action = node.action,
        payload = node.payload,
        prevState = actionQueue.state;
      if (node.isTransition) {
        var prevTransition = ReactSharedInternals.T,
          currentTransition = {};
        currentTransition._updatedFibers = new Set();
        ReactSharedInternals.T = currentTransition;
        try {
          var returnValue = action(prevState, payload),
            onStartTransitionFinish = ReactSharedInternals.S;
          null !== onStartTransitionFinish &&
            onStartTransitionFinish(currentTransition, returnValue);
          handleActionReturnValue(actionQueue, node, returnValue);
        } catch (error) {
          onActionError(actionQueue, node, error);
        } finally {
          null !== prevTransition &&
            null !== currentTransition.types &&
            (null !== prevTransition.types &&
              prevTransition.types !== currentTransition.types &&
              console.error(
                "We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."
              ),
            (prevTransition.types = currentTransition.types)),
            (ReactSharedInternals.T = prevTransition),
            null === prevTransition &&
              currentTransition._updatedFibers &&
              ((actionQueue = currentTransition._updatedFibers.size),
              currentTransition._updatedFibers.clear(),
              10 < actionQueue &&
                console.warn(
                  "Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."
                ));
        }
      } else
        try {
          (currentTransition = action(prevState, payload)),
            handleActionReturnValue(actionQueue, node, currentTransition);
        } catch (error$4) {
          onActionError(actionQueue, node, error$4);
        }
    }
    function handleActionReturnValue(actionQueue, node, returnValue) {
      null !== returnValue &&
      "object" === typeof returnValue &&
      "function" === typeof returnValue.then
        ? (ReactSharedInternals.asyncTransitions++,
          returnValue.then(releaseAsyncTransition, releaseAsyncTransition),
          returnValue.then(
            function (nextState) {
              onActionSuccess(actionQueue, node, nextState);
            },
            function (error) {
              return onActionError(actionQueue, node, error);
            }
          ),
          node.isTransition ||
            console.error(
              "An async function with useActionState was called outside of a transition. This is likely not what you intended (for example, isPending will not update correctly). Either call the returned function inside startTransition, or pass it to an `action` or `formAction` prop."
            ))
        : onActionSuccess(actionQueue, node, returnValue);
    }
    function onActionSuccess(actionQueue, actionNode, nextState) {
      actionNode.status = "fulfilled";
      actionNode.value = nextState;
      notifyActionListeners(actionNode);
      actionQueue.state = nextState;
      actionNode = actionQueue.pending;
      null !== actionNode &&
        ((nextState = actionNode.next),
        nextState === actionNode
          ? (actionQueue.pending = null)
          : ((nextState = nextState.next),
            (actionNode.next = nextState),
            runActionStateAction(actionQueue, nextState)));
    }
    function onActionError(actionQueue, actionNode, error) {
      var last = actionQueue.pending;
      actionQueue.pending = null;
      if (null !== last) {
        last = last.next;
        do
          (actionNode.status = "rejected"),
            (actionNode.reason = error),
            notifyActionListeners(actionNode),
            (actionNode = actionNode.next);
        while (actionNode !== last);
      }
      actionQueue.action = null;
    }
    function notifyActionListeners(actionNode) {
      actionNode = actionNode.listeners;
      for (var i = 0; i < actionNode.length; i++) (0, actionNode[i])();
    }
    function actionStateReducer(oldState, newState) {
      return newState;
    }
    function mountActionState(action, initialStateProp) {
      if (isHydrating) {
        var ssrFormState = workInProgressRoot.formState;
        if (null !== ssrFormState) {
          a: {
            var isMatching = currentlyRenderingFiber;
            if (isHydrating) {
              if (nextHydratableInstance) {
                b: {
                  var markerInstance = nextHydratableInstance;
                  for (
                    var inRootOrSingleton = rootOrSingletonContext;
                    8 !== markerInstance.nodeType;

                  ) {
                    if (!inRootOrSingleton) {
                      markerInstance = null;
                      break b;
                    }
                    markerInstance = getNextHydratable(
                      markerInstance.nextSibling
                    );
                    if (null === markerInstance) {
                      markerInstance = null;
                      break b;
                    }
                  }
                  inRootOrSingleton = markerInstance.data;
                  markerInstance =
                    inRootOrSingleton === FORM_STATE_IS_MATCHING ||
                    inRootOrSingleton === FORM_STATE_IS_NOT_MATCHING
                      ? markerInstance
                      : null;
                }
                if (markerInstance) {
                  nextHydratableInstance = getNextHydratable(
                    markerInstance.nextSibling
                  );
                  isMatching = markerInstance.data === FORM_STATE_IS_MATCHING;
                  break a;
                }
              }
              throwOnHydrationMismatch(isMatching);
            }
            isMatching = !1;
          }
          isMatching && (initialStateProp = ssrFormState[0]);
        }
      }
      ssrFormState = mountWorkInProgressHook();
      ssrFormState.memoizedState = ssrFormState.baseState = initialStateProp;
      isMatching = {
        pending: null,
        lanes: 0,
        dispatch: null,
        lastRenderedReducer: actionStateReducer,
        lastRenderedState: initialStateProp
      };
      ssrFormState.queue = isMatching;
      ssrFormState = dispatchSetState.bind(
        null,
        currentlyRenderingFiber,
        isMatching
      );
      isMatching.dispatch = ssrFormState;
      isMatching = mountStateImpl(!1);
      inRootOrSingleton = dispatchOptimisticSetState.bind(
        null,
        currentlyRenderingFiber,
        !1,
        isMatching.queue
      );
      isMatching = mountWorkInProgressHook();
      markerInstance = {
        state: initialStateProp,
        dispatch: null,
        action: action,
        pending: null
      };
      isMatching.queue = markerInstance;
      ssrFormState = dispatchActionState.bind(
        null,
        currentlyRenderingFiber,
        markerInstance,
        inRootOrSingleton,
        ssrFormState
      );
      markerInstance.dispatch = ssrFormState;
      isMatching.memoizedState = action;
      return [initialStateProp, ssrFormState, !1];
    }
    function updateActionState(action) {
      var stateHook = updateWorkInProgressHook();
      return updateActionStateImpl(stateHook, currentHook, action);
    }
    function updateActionStateImpl(stateHook, currentStateHook, action) {
      currentStateHook = updateReducerImpl(
        stateHook,
        currentStateHook,
        actionStateReducer
      )[0];
      stateHook = updateReducer(basicStateReducer)[0];
      if (
        "object" === typeof currentStateHook &&
        null !== currentStateHook &&
        "function" === typeof currentStateHook.then
      )
        try {
          var state = useThenable(currentStateHook);
        } catch (x) {
          if (x === SuspenseException) throw SuspenseActionException;
          throw x;
        }
      else state = currentStateHook;
      currentStateHook = updateWorkInProgressHook();
      var actionQueue = currentStateHook.queue,
        dispatch = actionQueue.dispatch;
      action !== currentStateHook.memoizedState &&
        ((currentlyRenderingFiber.flags |= 2048),
        pushSimpleEffect(
          HasEffect | Passive,
          { destroy: void 0 },
          actionStateActionEffect.bind(null, actionQueue, action),
          null
        ));
      return [state, dispatch, stateHook];
    }
    function actionStateActionEffect(actionQueue, action) {
      actionQueue.action = action;
    }
    function rerenderActionState(action) {
      var stateHook = updateWorkInProgressHook(),
        currentStateHook = currentHook;
      if (null !== currentStateHook)
        return updateActionStateImpl(stateHook, currentStateHook, action);
      updateWorkInProgressHook();
      stateHook = stateHook.memoizedState;
      currentStateHook = updateWorkInProgressHook();
      var dispatch = currentStateHook.queue.dispatch;
      currentStateHook.memoizedState = action;
      return [stateHook, dispatch, !1];
    }
    function pushSimpleEffect(tag, inst, create, deps) {
      tag = { tag: tag, create: create, deps: deps, inst: inst, next: null };
      inst = currentlyRenderingFiber.updateQueue;
      null === inst &&
        ((inst = createFunctionComponentUpdateQueue()),
        (currentlyRenderingFiber.updateQueue = inst));
      create = inst.lastEffect;
      null === create
        ? (inst.lastEffect = tag.next = tag)
        : ((deps = create.next),
          (create.next = tag),
          (tag.next = deps),
          (inst.lastEffect = tag));
      return tag;
    }
    function mountRef(initialValue) {
      var hook = mountWorkInProgressHook();
      initialValue = { current: initialValue };
      return (hook.memoizedState = initialValue);
    }
    function mountEffectImpl(fiberFlags, hookFlags, create, deps) {
      var hook = mountWorkInProgressHook();
      currentlyRenderingFiber.flags |= fiberFlags;
      hook.memoizedState = pushSimpleEffect(
        HasEffect | hookFlags,
        { destroy: void 0 },
        create,
        void 0 === deps ? null : deps
      );
    }
    function updateEffectImpl(fiberFlags, hookFlags, create, deps) {
      var hook = updateWorkInProgressHook();
      deps = void 0 === deps ? null : deps;
      var inst = hook.memoizedState.inst;
      null !== currentHook &&
      null !== deps &&
      areHookInputsEqual(deps, currentHook.memoizedState.deps)
        ? (hook.memoizedState = pushSimpleEffect(hookFlags, inst, create, deps))
        : ((currentlyRenderingFiber.flags |= fiberFlags),
          (hook.memoizedState = pushSimpleEffect(
            HasEffect | hookFlags,
            inst,
            create,
            deps
          )));
    }
    function mountEffect(create, deps) {
      (currentlyRenderingFiber.mode & StrictEffectsMode) !== NoMode
        ? mountEffectImpl(276826112, Passive, create, deps)
        : mountEffectImpl(8390656, Passive, create, deps);
    }
    function useEffectEventImpl(payload) {
      currentlyRenderingFiber.flags |= 4;
      var componentUpdateQueue = currentlyRenderingFiber.updateQueue;
      if (null === componentUpdateQueue)
        (componentUpdateQueue = createFunctionComponentUpdateQueue()),
          (currentlyRenderingFiber.updateQueue = componentUpdateQueue),
          (componentUpdateQueue.events = [payload]);
      else {
        var events = componentUpdateQueue.events;
        null === events
          ? (componentUpdateQueue.events = [payload])
          : events.push(payload);
      }
    }
    function mountEvent(callback) {
      var hook = mountWorkInProgressHook(),
        ref = { impl: callback };
      hook.memoizedState = ref;
      return function () {
        if ((executionContext & RenderContext) !== NoContext)
          throw Error(
            "A function wrapped in useEffectEvent can't be called during rendering."
          );
        return ref.impl.apply(void 0, arguments);
      };
    }
    function updateEvent(callback) {
      var ref = updateWorkInProgressHook().memoizedState;
      useEffectEventImpl({ ref: ref, nextImpl: callback });
      return function () {
        if ((executionContext & RenderContext) !== NoContext)
          throw Error(
            "A function wrapped in useEffectEvent can't be called during rendering."
          );
        return ref.impl.apply(void 0, arguments);
      };
    }
    function mountLayoutEffect(create, deps) {
      var fiberFlags = 4194308;
      (currentlyRenderingFiber.mode & StrictEffectsMode) !== NoMode &&
        (fiberFlags |= 134217728);
      return mountEffectImpl(fiberFlags, Layout, create, deps);
    }
    function imperativeHandleEffect(create, ref) {
      if ("function" === typeof ref) {
        create = create();
        var refCleanup = ref(create);
        return function () {
          "function" === typeof refCleanup ? refCleanup() : ref(null);
        };
      }
      if (null !== ref && void 0 !== ref)
        return (
          ref.hasOwnProperty("current") ||
            console.error(
              "Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.",
              "an object with keys {" + Object.keys(ref).join(", ") + "}"
            ),
          (create = create()),
          (ref.current = create),
          function () {
            ref.current = null;
          }
        );
    }
    function mountImperativeHandle(ref, create, deps) {
      "function" !== typeof create &&
        console.error(
          "Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",
          null !== create ? typeof create : "null"
        );
      deps = null !== deps && void 0 !== deps ? deps.concat([ref]) : null;
      var fiberFlags = 4194308;
      (currentlyRenderingFiber.mode & StrictEffectsMode) !== NoMode &&
        (fiberFlags |= 134217728);
      mountEffectImpl(
        fiberFlags,
        Layout,
        imperativeHandleEffect.bind(null, create, ref),
        deps
      );
    }
    function updateImperativeHandle(ref, create, deps) {
      "function" !== typeof create &&
        console.error(
          "Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",
          null !== create ? typeof create : "null"
        );
      deps = null !== deps && void 0 !== deps ? deps.concat([ref]) : null;
      updateEffectImpl(
        4,
        Layout,
        imperativeHandleEffect.bind(null, create, ref),
        deps
      );
    }
    function mountCallback(callback, deps) {
      mountWorkInProgressHook().memoizedState = [
        callback,
        void 0 === deps ? null : deps
      ];
      return callback;
    }
    function updateCallback(callback, deps) {
      var hook = updateWorkInProgressHook();
      deps = void 0 === deps ? null : deps;
      var prevState = hook.memoizedState;
      if (null !== deps && areHookInputsEqual(deps, prevState[1]))
        return prevState[0];
      hook.memoizedState = [callback, deps];
      return callback;
    }
    function mountMemo(nextCreate, deps) {
      var hook = mountWorkInProgressHook();
      deps = void 0 === deps ? null : deps;
      var nextValue = nextCreate();
      if (shouldDoubleInvokeUserFnsInHooksDEV) {
        setIsStrictModeForDevtools(!0);
        try {
          nextCreate();
        } finally {
          setIsStrictModeForDevtools(!1);
        }
      }
      hook.memoizedState = [nextValue, deps];
      return nextValue;
    }
    function updateMemo(nextCreate, deps) {
      var hook = updateWorkInProgressHook();
      deps = void 0 === deps ? null : deps;
      var prevState = hook.memoizedState;
      if (null !== deps && areHookInputsEqual(deps, prevState[1]))
        return prevState[0];
      prevState = nextCreate();
      if (shouldDoubleInvokeUserFnsInHooksDEV) {
        setIsStrictModeForDevtools(!0);
        try {
          nextCreate();
        } finally {
          setIsStrictModeForDevtools(!1);
        }
      }
      hook.memoizedState = [prevState, deps];
      return prevState;
    }
    function mountDeferredValue(value, initialValue) {
      var hook = mountWorkInProgressHook();
      return mountDeferredValueImpl(hook, value, initialValue);
    }
    function updateDeferredValue(value, initialValue) {
      var hook = updateWorkInProgressHook();
      return updateDeferredValueImpl(
        hook,
        currentHook.memoizedState,
        value,
        initialValue
      );
    }
    function rerenderDeferredValue(value, initialValue) {
      var hook = updateWorkInProgressHook();
      return null === currentHook
        ? mountDeferredValueImpl(hook, value, initialValue)
        : updateDeferredValueImpl(
            hook,
            currentHook.memoizedState,
            value,
            initialValue
          );
    }
    function mountDeferredValueImpl(hook, value, initialValue) {
      if (
        void 0 === initialValue ||
        (0 !== (renderLanes & 1073741824) &&
          0 === (workInProgressRootRenderLanes & 261930))
      )
        return (hook.memoizedState = value);
      hook.memoizedState = initialValue;
      hook = requestDeferredLane();
      currentlyRenderingFiber.lanes |= hook;
      workInProgressRootSkippedLanes |= hook;
      return initialValue;
    }
    function updateDeferredValueImpl(hook, prevValue, value, initialValue) {
      if (objectIs(value, prevValue)) return value;
      if (null !== currentTreeHiddenStackCursor.current)
        return (
          (hook = mountDeferredValueImpl(hook, value, initialValue)),
          objectIs(hook, prevValue) || (didReceiveUpdate = !0),
          hook
        );
      if (
        0 === (renderLanes & 42) ||
        (0 !== (renderLanes & 1073741824) &&
          0 === (workInProgressRootRenderLanes & 261930))
      )
        return (didReceiveUpdate = !0), (hook.memoizedState = value);
      hook = requestDeferredLane();
      currentlyRenderingFiber.lanes |= hook;
      workInProgressRootSkippedLanes |= hook;
      return prevValue;
    }
    function releaseAsyncTransition() {
      ReactSharedInternals.asyncTransitions--;
    }
    function startTransition(
      fiber,
      queue,
      pendingState,
      finishedState,
      callback
    ) {
      var previousPriority = ReactDOMSharedInternals.p;
      ReactDOMSharedInternals.p =
        0 !== previousPriority && previousPriority < ContinuousEventPriority
          ? previousPriority
          : ContinuousEventPriority;
      var prevTransition = ReactSharedInternals.T,
        currentTransition = {};
      currentTransition._updatedFibers = new Set();
      ReactSharedInternals.T = currentTransition;
      dispatchOptimisticSetState(fiber, !1, queue, pendingState);
      try {
        var returnValue = callback(),
          onStartTransitionFinish = ReactSharedInternals.S;
        null !== onStartTransitionFinish &&
          onStartTransitionFinish(currentTransition, returnValue);
        if (
          null !== returnValue &&
          "object" === typeof returnValue &&
          "function" === typeof returnValue.then
        ) {
          ReactSharedInternals.asyncTransitions++;
          returnValue.then(releaseAsyncTransition, releaseAsyncTransition);
          var thenableForFinishedState = chainThenableValue(
            returnValue,
            finishedState
          );
          dispatchSetStateInternal(
            fiber,
            queue,
            thenableForFinishedState,
            requestUpdateLane(fiber)
          );
        } else
          dispatchSetStateInternal(
            fiber,
            queue,
            finishedState,
            requestUpdateLane(fiber)
          );
      } catch (error) {
        dispatchSetStateInternal(
          fiber,
          queue,
          { then: function () {}, status: "rejected", reason: error },
          requestUpdateLane(fiber)
        );
      } finally {
        (ReactDOMSharedInternals.p = previousPriority),
          null !== prevTransition &&
            null !== currentTransition.types &&
            (null !== prevTransition.types &&
              prevTransition.types !== currentTransition.types &&
              console.error(
                "We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."
              ),
            (prevTransition.types = currentTransition.types)),
          (ReactSharedInternals.T = prevTransition),
          null === prevTransition &&
            currentTransition._updatedFibers &&
            ((fiber = currentTransition._updatedFibers.size),
            currentTransition._updatedFibers.clear(),
            10 < fiber &&
              console.warn(
                "Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."
              ));
      }
    }
    function startHostTransition(formFiber, pendingState, action, formData) {
      if (5 !== formFiber.tag)
        throw Error(
          "Expected the form instance to be a HostComponent. This is a bug in React."
        );
      var queue = ensureFormComponentIsStateful(formFiber).queue;
      startHostActionTimer(formFiber);
      startTransition(
        formFiber,
        queue,
        pendingState,
        NotPendingTransition,
        null === action
          ? noop
          : function () {
              requestFormReset$1(formFiber);
              return action(formData);
            }
      );
    }
    function ensureFormComponentIsStateful(formFiber) {
      var existingStateHook = formFiber.memoizedState;
      if (null !== existingStateHook) return existingStateHook;
      existingStateHook = {
        memoizedState: NotPendingTransition,
        baseState: NotPendingTransition,
        baseQueue: null,
        queue: {
          pending: null,
          lanes: 0,
          dispatch: null,
          lastRenderedReducer: basicStateReducer,
          lastRenderedState: NotPendingTransition
        },
        next: null
      };
      var initialResetState = {};
      existingStateHook.next = {
        memoizedState: initialResetState,
        baseState: initialResetState,
        baseQueue: null,
        queue: {
          pending: null,
          lanes: 0,
          dispatch: null,
          lastRenderedReducer: basicStateReducer,
          lastRenderedState: initialResetState
        },
        next: null
      };
      formFiber.memoizedState = existingStateHook;
      formFiber = formFiber.alternate;
      null !== formFiber && (formFiber.memoizedState = existingStateHook);
      return existingStateHook;
    }
    function requestFormReset$1(formFiber) {
      null === ReactSharedInternals.T &&
        console.error(
          "requestFormReset was called outside a transition or action. To fix, move to an action, or wrap with startTransition."
        );
      var stateHook = ensureFormComponentIsStateful(formFiber);
      null === stateHook.next &&
        (stateHook = formFiber.alternate.memoizedState);
      dispatchSetStateInternal(
        formFiber,
        stateHook.next.queue,
        {},
        requestUpdateLane(formFiber)
      );
    }
    function mountTransition() {
      var stateHook = mountStateImpl(!1);
      stateHook = startTransition.bind(
        null,
        currentlyRenderingFiber,
        stateHook.queue,
        !0,
        !1
      );
      mountWorkInProgressHook().memoizedState = stateHook;
      return [!1, stateHook];
    }
    function updateTransition() {
      var booleanOrThenable = updateReducer(basicStateReducer)[0],
        start = updateWorkInProgressHook().memoizedState;
      return [
        "boolean" === typeof booleanOrThenable
          ? booleanOrThenable
          : useThenable(booleanOrThenable),
        start
      ];
    }
    function rerenderTransition() {
      var booleanOrThenable = rerenderReducer(basicStateReducer)[0],
        start = updateWorkInProgressHook().memoizedState;
      return [
        "boolean" === typeof booleanOrThenable
          ? booleanOrThenable
          : useThenable(booleanOrThenable),
        start
      ];
    }
    function useHostTransitionStatus() {
      return readContext(HostTransitionContext);
    }
    function mountId() {
      var hook = mountWorkInProgressHook(),
        identifierPrefix = workInProgressRoot.identifierPrefix;
      if (isHydrating) {
        var treeId = treeContextOverflow;
        var idWithLeadingBit = treeContextId;
        treeId =
          (
            idWithLeadingBit & ~(1 << (32 - clz32(idWithLeadingBit) - 1))
          ).toString(32) + treeId;
        identifierPrefix = "_" + identifierPrefix + "R_" + treeId;
        treeId = localIdCounter++;
        0 < treeId && (identifierPrefix += "H" + treeId.toString(32));
        identifierPrefix += "_";
      } else
        (treeId = globalClientIdCounter++),
          (identifierPrefix =
            "_" + identifierPrefix + "r_" + treeId.toString(32) + "_");
      return (hook.memoizedState = identifierPrefix);
    }
    function mountRefresh() {
      return (mountWorkInProgressHook().memoizedState = refreshCache.bind(
        null,
        currentlyRenderingFiber
      ));
    }
    function refreshCache(fiber, seedKey) {
      for (var provider = fiber.return; null !== provider; ) {
        switch (provider.tag) {
          case 24:
          case 3:
            var lane = requestUpdateLane(provider),
              refreshUpdate = createUpdate(lane),
              root = enqueueUpdate(provider, refreshUpdate, lane);
            null !== root &&
              (startUpdateTimerByLane(lane, "refresh()", fiber),
              scheduleUpdateOnFiber(root, provider, lane),
              entangleTransitions(root, provider, lane));
            fiber = createCache();
            null !== seedKey &&
              void 0 !== seedKey &&
              null !== root &&
              console.error(
                "The seed argument is not enabled outside experimental channels."
              );
            refreshUpdate.payload = { cache: fiber };
            return;
        }
        provider = provider.return;
      }
    }
    function dispatchReducerAction(fiber, queue, action) {
      var args = arguments;
      "function" === typeof args[3] &&
        console.error(
          "State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect()."
        );
      args = requestUpdateLane(fiber);
      var update = {
        lane: args,
        revertLane: 0,
        gesture: null,
        action: action,
        hasEagerState: !1,
        eagerState: null,
        next: null
      };
      isRenderPhaseUpdate(fiber)
        ? enqueueRenderPhaseUpdate(queue, update)
        : ((update = enqueueConcurrentHookUpdate(fiber, queue, update, args)),
          null !== update &&
            (startUpdateTimerByLane(args, "dispatch()", fiber),
            scheduleUpdateOnFiber(update, fiber, args),
            entangleTransitionUpdate(update, queue, args)));
    }
    function dispatchSetState(fiber, queue, action) {
      var args = arguments;
      "function" === typeof args[3] &&
        console.error(
          "State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect()."
        );
      args = requestUpdateLane(fiber);
      dispatchSetStateInternal(fiber, queue, action, args) &&
        startUpdateTimerByLane(args, "setState()", fiber);
    }
    function dispatchSetStateInternal(fiber, queue, action, lane) {
      var update = {
        lane: lane,
        revertLane: 0,
        gesture: null,
        action: action,
        hasEagerState: !1,
        eagerState: null,
        next: null
      };
      if (isRenderPhaseUpdate(fiber)) enqueueRenderPhaseUpdate(queue, update);
      else {
        var alternate = fiber.alternate;
        if (
          0 === fiber.lanes &&
          (null === alternate || 0 === alternate.lanes) &&
          ((alternate = queue.lastRenderedReducer), null !== alternate)
        ) {
          var prevDispatcher = ReactSharedInternals.H;
          ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
          try {
            var currentState = queue.lastRenderedState,
              eagerState = alternate(currentState, action);
            update.hasEagerState = !0;
            update.eagerState = eagerState;
            if (objectIs(eagerState, currentState))
              return (
                enqueueUpdate$1(fiber, queue, update, 0),
                null === workInProgressRoot &&
                  finishQueueingConcurrentUpdates(),
                !1
              );
          } catch (error) {
          } finally {
            ReactSharedInternals.H = prevDispatcher;
          }
        }
        action = enqueueConcurrentHookUpdate(fiber, queue, update, lane);
        if (null !== action)
          return (
            scheduleUpdateOnFiber(action, fiber, lane),
            entangleTransitionUpdate(action, queue, lane),
            !0
          );
      }
      return !1;
    }
    function dispatchOptimisticSetState(
      fiber,
      throwIfDuringRender,
      queue,
      action
    ) {
      null === ReactSharedInternals.T &&
        0 === currentEntangledLane &&
        console.error(
          "An optimistic state update occurred outside a transition or action. To fix, move the update to an action, or wrap with startTransition."
        );
      action = {
        lane: 2,
        revertLane: requestTransitionLane(),
        gesture: null,
        action: action,
        hasEagerState: !1,
        eagerState: null,
        next: null
      };
      if (isRenderPhaseUpdate(fiber)) {
        if (throwIfDuringRender)
          throw Error("Cannot update optimistic state while rendering.");
        console.error("Cannot call startTransition while rendering.");
      } else
        (throwIfDuringRender = enqueueConcurrentHookUpdate(
          fiber,
          queue,
          action,
          2
        )),
          null !== throwIfDuringRender &&
            (startUpdateTimerByLane(2, "setOptimistic()", fiber),
            scheduleUpdateOnFiber(throwIfDuringRender, fiber, 2));
    }
    function isRenderPhaseUpdate(fiber) {
      var alternate = fiber.alternate;
      return (
        fiber === currentlyRenderingFiber ||
        (null !== alternate && alternate === currentlyRenderingFiber)
      );
    }
    function enqueueRenderPhaseUpdate(queue, update) {
      didScheduleRenderPhaseUpdateDuringThisPass =
        didScheduleRenderPhaseUpdate = !0;
      var pending = queue.pending;
      null === pending
        ? (update.next = update)
        : ((update.next = pending.next), (pending.next = update));
      queue.pending = update;
    }
    function entangleTransitionUpdate(root, queue, lane) {
      if (0 !== (lane & 4194048)) {
        var queueLanes = queue.lanes;
        queueLanes &= root.pendingLanes;
        lane |= queueLanes;
        queue.lanes = lane;
        markRootEntangled(root, lane);
      }
    }
    function warnOnInvalidCallback(callback) {
      if (null !== callback && "function" !== typeof callback) {
        var key = String(callback);
        didWarnOnInvalidCallback.has(key) ||
          (didWarnOnInvalidCallback.add(key),
          console.error(
            "Expected the last optional `callback` argument to be a function. Instead received: %s.",
            callback
          ));
      }
    }
    function applyDerivedStateFromProps(
      workInProgress,
      ctor,
      getDerivedStateFromProps,
      nextProps
    ) {
      var prevState = workInProgress.memoizedState,
        partialState = getDerivedStateFromProps(nextProps, prevState);
      if (workInProgress.mode & StrictLegacyMode) {
        setIsStrictModeForDevtools(!0);
        try {
          partialState = getDerivedStateFromProps(nextProps, prevState);
        } finally {
          setIsStrictModeForDevtools(!1);
        }
      }
      void 0 === partialState &&
        ((ctor = getComponentNameFromType(ctor) || "Component"),
        didWarnAboutUndefinedDerivedState.has(ctor) ||
          (didWarnAboutUndefinedDerivedState.add(ctor),
          console.error(
            "%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.",
            ctor
          )));
      prevState =
        null === partialState || void 0 === partialState
          ? prevState
          : assign({}, prevState, partialState);
      workInProgress.memoizedState = prevState;
      0 === workInProgress.lanes &&
        (workInProgress.updateQueue.baseState = prevState);
    }
    function checkShouldComponentUpdate(
      workInProgress,
      ctor,
      oldProps,
      newProps,
      oldState,
      newState,
      nextContext
    ) {
      var instance = workInProgress.stateNode;
      if ("function" === typeof instance.shouldComponentUpdate) {
        oldProps = instance.shouldComponentUpdate(
          newProps,
          newState,
          nextContext
        );
        if (workInProgress.mode & StrictLegacyMode) {
          setIsStrictModeForDevtools(!0);
          try {
            oldProps = instance.shouldComponentUpdate(
              newProps,
              newState,
              nextContext
            );
          } finally {
            setIsStrictModeForDevtools(!1);
          }
        }
        void 0 === oldProps &&
          console.error(
            "%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.",
            getComponentNameFromType(ctor) || "Component"
          );
        return oldProps;
      }
      return ctor.prototype && ctor.prototype.isPureReactComponent
        ? !shallowEqual(oldProps, newProps) || !shallowEqual(oldState, newState)
        : !0;
    }
    function callComponentWillReceiveProps(
      workInProgress,
      instance,
      newProps,
      nextContext
    ) {
      var oldState = instance.state;
      "function" === typeof instance.componentWillReceiveProps &&
        instance.componentWillReceiveProps(newProps, nextContext);
      "function" === typeof instance.UNSAFE_componentWillReceiveProps &&
        instance.UNSAFE_componentWillReceiveProps(newProps, nextContext);
      instance.state !== oldState &&
        ((workInProgress =
          getComponentNameFromFiber(workInProgress) || "Component"),
        didWarnAboutStateAssignmentForComponent.has(workInProgress) ||
          (didWarnAboutStateAssignmentForComponent.add(workInProgress),
          console.error(
            "%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",
            workInProgress
          )),
        classComponentUpdater.enqueueReplaceState(
          instance,
          instance.state,
          null
        ));
    }
    function resolveClassComponentProps(Component, baseProps) {
      var newProps = baseProps;
      if ("ref" in baseProps) {
        newProps = {};
        for (var propName in baseProps)
          "ref" !== propName && (newProps[propName] = baseProps[propName]);
      }
      if ((Component = Component.defaultProps)) {
        newProps === baseProps && (newProps = assign({}, newProps));
        for (var _propName in Component)
          void 0 === newProps[_propName] &&
            (newProps[_propName] = Component[_propName]);
      }
      return newProps;
    }
    function defaultOnUncaughtError(error) {
      reportGlobalError(error);
      console.warn(
        "%s\n\n%s\n",
        componentName
          ? "An error occurred in the <" + componentName + "> component."
          : "An error occurred in one of your React components.",
        "Consider adding an error boundary to your tree to customize error handling behavior.\nVisit https://react.dev/link/error-boundaries to learn more about error boundaries."
      );
    }
    function defaultOnCaughtError(error) {
      var componentNameMessage = componentName
          ? "The above error occurred in the <" + componentName + "> component."
          : "The above error occurred in one of your React components.",
        recreateMessage =
          "React will try to recreate this component tree from scratch using the error boundary you provided, " +
          ((errorBoundaryName || "Anonymous") + ".");
      if (
        "object" === typeof error &&
        null !== error &&
        "string" === typeof error.environmentName
      ) {
        var JSCompiler_inline_result = error.environmentName;
        error = [
          "%o\n\n%s\n\n%s\n",
          error,
          componentNameMessage,
          recreateMessage
        ].slice(0);
        "string" === typeof error[0]
          ? error.splice(
              0,
              1,
              badgeFormat + " " + error[0],
              badgeStyle,
              pad + JSCompiler_inline_result + pad,
              resetStyle
            )
          : error.splice(
              0,
              0,
              badgeFormat,
              badgeStyle,
              pad + JSCompiler_inline_result + pad,
              resetStyle
            );
        error.unshift(console);
        JSCompiler_inline_result = bind.apply(console.error, error);
        JSCompiler_inline_result();
      } else
        console.error(
          "%o\n\n%s\n\n%s\n",
          error,
          componentNameMessage,
          recreateMessage
        );
    }
    function defaultOnRecoverableError(error) {
      reportGlobalError(error);
    }
    function logUncaughtError(root, errorInfo) {
      try {
        componentName = errorInfo.source
          ? getComponentNameFromFiber(errorInfo.source)
          : null;
        errorBoundaryName = null;
        var error = errorInfo.value;
        if (null !== ReactSharedInternals.actQueue)
          ReactSharedInternals.thrownErrors.push(error);
        else {
          var onUncaughtError = root.onUncaughtError;
          onUncaughtError(error, { componentStack: errorInfo.stack });
        }
      } catch (e$5) {
        setTimeout(function () {
          throw e$5;
        });
      }
    }
    function logCaughtError(root, boundary, errorInfo) {
      try {
        componentName = errorInfo.source
          ? getComponentNameFromFiber(errorInfo.source)
          : null;
        errorBoundaryName = getComponentNameFromFiber(boundary);
        var onCaughtError = root.onCaughtError;
        onCaughtError(errorInfo.value, {
          componentStack: errorInfo.stack,
          errorBoundary: 1 === boundary.tag ? boundary.stateNode : null
        });
      } catch (e$6) {
        setTimeout(function () {
          throw e$6;
        });
      }
    }
    function createRootErrorUpdate(root, errorInfo, lane) {
      lane = createUpdate(lane);
      lane.tag = CaptureUpdate;
      lane.payload = { element: null };
      lane.callback = function () {
        runWithFiberInDEV(errorInfo.source, logUncaughtError, root, errorInfo);
      };
      return lane;
    }
    function createClassErrorUpdate(lane) {
      lane = createUpdate(lane);
      lane.tag = CaptureUpdate;
      return lane;
    }
    function initializeClassErrorUpdate(update, root, fiber, errorInfo) {
      var getDerivedStateFromError = fiber.type.getDerivedStateFromError;
      if ("function" === typeof getDerivedStateFromError) {
        var error = errorInfo.value;
        update.payload = function () {
          return getDerivedStateFromError(error);
        };
        update.callback = function () {
          markFailedErrorBoundaryForHotReloading(fiber);
          runWithFiberInDEV(
            errorInfo.source,
            logCaughtError,
            root,
            fiber,
            errorInfo
          );
        };
      }
      var inst = fiber.stateNode;
      null !== inst &&
        "function" === typeof inst.componentDidCatch &&
        (update.callback = function () {
          markFailedErrorBoundaryForHotReloading(fiber);
          runWithFiberInDEV(
            errorInfo.source,
            logCaughtError,
            root,
            fiber,
            errorInfo
          );
          "function" !== typeof getDerivedStateFromError &&
            (null === legacyErrorBoundariesThatAlreadyFailed
              ? (legacyErrorBoundariesThatAlreadyFailed = new Set([this]))
              : legacyErrorBoundariesThatAlreadyFailed.add(this));
          callComponentDidCatchInDEV(this, errorInfo);
          "function" === typeof getDerivedStateFromError ||
            (0 === (fiber.lanes & 2) &&
              console.error(
                "%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.",
                getComponentNameFromFiber(fiber) || "Unknown"
              ));
        });
    }
    function throwException(
      root,
      returnFiber,
      sourceFiber,
      value,
      rootRenderLanes
    ) {
      sourceFiber.flags |= 32768;
      isDevToolsPresent && restorePendingUpdaters(root, rootRenderLanes);
      if (
        null !== value &&
        "object" === typeof value &&
        "function" === typeof value.then
      ) {
        returnFiber = sourceFiber.alternate;
        null !== returnFiber &&
          propagateParentContextChanges(
            returnFiber,
            sourceFiber,
            rootRenderLanes,
            !0
          );
        isHydrating && (didSuspendOrErrorDEV = !0);
        sourceFiber = suspenseHandlerStackCursor.current;
        if (null !== sourceFiber) {
          switch (sourceFiber.tag) {
            case 31:
            case 13:
              return (
                null === shellBoundary
                  ? renderDidSuspendDelayIfPossible()
                  : null === sourceFiber.alternate &&
                    workInProgressRootExitStatus === RootInProgress &&
                    (workInProgressRootExitStatus = RootSuspended),
                (sourceFiber.flags &= -257),
                (sourceFiber.flags |= 65536),
                (sourceFiber.lanes = rootRenderLanes),
                value === noopSuspenseyCommitThenable
                  ? (sourceFiber.flags |= 16384)
                  : ((returnFiber = sourceFiber.updateQueue),
                    null === returnFiber
                      ? (sourceFiber.updateQueue = new Set([value]))
                      : returnFiber.add(value),
                    attachPingListener(root, value, rootRenderLanes)),
                !1
              );
            case 22:
              return (
                (sourceFiber.flags |= 65536),
                value === noopSuspenseyCommitThenable
                  ? (sourceFiber.flags |= 16384)
                  : ((returnFiber = sourceFiber.updateQueue),
                    null === returnFiber
                      ? ((returnFiber = {
                          transitions: null,
                          markerInstances: null,
                          retryQueue: new Set([value])
                        }),
                        (sourceFiber.updateQueue = returnFiber))
                      : ((sourceFiber = returnFiber.retryQueue),
                        null === sourceFiber
                          ? (returnFiber.retryQueue = new Set([value]))
                          : sourceFiber.add(value)),
                    attachPingListener(root, value, rootRenderLanes)),
                !1
              );
          }
          throw Error(
            "Unexpected Suspense handler tag (" +
              sourceFiber.tag +
              "). This is a bug in React."
          );
        }
        attachPingListener(root, value, rootRenderLanes);
        renderDidSuspendDelayIfPossible();
        return !1;
      }
      if (isHydrating)
        return (
          (didSuspendOrErrorDEV = !0),
          (returnFiber = suspenseHandlerStackCursor.current),
          null !== returnFiber
            ? (0 === (returnFiber.flags & 65536) && (returnFiber.flags |= 256),
              (returnFiber.flags |= 65536),
              (returnFiber.lanes = rootRenderLanes),
              value !== HydrationMismatchException &&
                queueHydrationError(
                  createCapturedValueAtFiber(
                    Error(
                      "There was an error while hydrating but React was able to recover by instead client rendering from the nearest Suspense boundary.",
                      { cause: value }
                    ),
                    sourceFiber
                  )
                ))
            : (value !== HydrationMismatchException &&
                queueHydrationError(
                  createCapturedValueAtFiber(
                    Error(
                      "There was an error while hydrating but React was able to recover by instead client rendering the entire root.",
                      { cause: value }
                    ),
                    sourceFiber
                  )
                ),
              (root = root.current.alternate),
              (root.flags |= 65536),
              (rootRenderLanes &= -rootRenderLanes),
              (root.lanes |= rootRenderLanes),
              (value = createCapturedValueAtFiber(value, sourceFiber)),
              (rootRenderLanes = createRootErrorUpdate(
                root.stateNode,
                value,
                rootRenderLanes
              )),
              enqueueCapturedUpdate(root, rootRenderLanes),
              workInProgressRootExitStatus !== RootSuspendedWithDelay &&
                (workInProgressRootExitStatus = RootErrored)),
          !1
        );
      var error = createCapturedValueAtFiber(
        Error(
          "There was an error during concurrent rendering but React was able to recover by instead synchronously rendering the entire root.",
          { cause: value }
        ),
        sourceFiber
      );
      null === workInProgressRootConcurrentErrors
        ? (workInProgressRootConcurrentErrors = [error])
        : workInProgressRootConcurrentErrors.push(error);
      workInProgressRootExitStatus !== RootSuspendedWithDelay &&
        (workInProgressRootExitStatus = RootErrored);
      if (null === returnFiber) return !0;
      value = createCapturedValueAtFiber(value, sourceFiber);
      sourceFiber = returnFiber;
      do {
        switch (sourceFiber.tag) {
          case 3:
            return (
              (sourceFiber.flags |= 65536),
              (root = rootRenderLanes & -rootRenderLanes),
              (sourceFiber.lanes |= root),
              (root = createRootErrorUpdate(
                sourceFiber.stateNode,
                value,
                root
              )),
              enqueueCapturedUpdate(sourceFiber, root),
              !1
            );
          case 1:
            if (
              ((returnFiber = sourceFiber.type),
              (error = sourceFiber.stateNode),
              0 === (sourceFiber.flags & 128) &&
                ("function" === typeof returnFiber.getDerivedStateFromError ||
                  (null !== error &&
                    "function" === typeof error.componentDidCatch &&
                    (null === legacyErrorBoundariesThatAlreadyFailed ||
                      !legacyErrorBoundariesThatAlreadyFailed.has(error)))))
            )
              return (
                (sourceFiber.flags |= 65536),
                (rootRenderLanes &= -rootRenderLanes),
                (sourceFiber.lanes |= rootRenderLanes),
                (rootRenderLanes = createClassErrorUpdate(rootRenderLanes)),
                initializeClassErrorUpdate(
                  rootRenderLanes,
                  root,
                  sourceFiber,
                  value
                ),
                enqueueCapturedUpdate(sourceFiber, rootRenderLanes),
                !1
              );
        }
        sourceFiber = sourceFiber.return;
      } while (null !== sourceFiber);
      return !1;
    }
    function reconcileChildren(
      current,
      workInProgress,
      nextChildren,
      renderLanes
    ) {
      workInProgress.child =
        null === current
          ? mountChildFibers(workInProgress, null, nextChildren, renderLanes)
          : reconcileChildFibers(
              workInProgress,
              current.child,
              nextChildren,
              renderLanes
            );
    }
    function updateForwardRef(
      current,
      workInProgress,
      Component,
      nextProps,
      renderLanes
    ) {
      Component = Component.render;
      var ref = workInProgress.ref;
      if ("ref" in nextProps) {
        var propsWithoutRef = {};
        for (var key in nextProps)
          "ref" !== key && (propsWithoutRef[key] = nextProps[key]);
      } else propsWithoutRef = nextProps;
      prepareToReadContext(workInProgress);
      nextProps = renderWithHooks(
        current,
        workInProgress,
        Component,
        propsWithoutRef,
        ref,
        renderLanes
      );
      key = checkDidRenderIdHook();
      if (null !== current && !didReceiveUpdate)
        return (
          bailoutHooks(current, workInProgress, renderLanes),
          bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)
        );
      isHydrating && key && pushMaterializedTreeId(workInProgress);
      workInProgress.flags |= 1;
      reconcileChildren(current, workInProgress, nextProps, renderLanes);
      return workInProgress.child;
    }
    function updateMemoComponent(
      current,
      workInProgress,
      Component,
      nextProps,
      renderLanes
    ) {
      if (null === current) {
        var type = Component.type;
        if (
          "function" === typeof type &&
          !shouldConstruct(type) &&
          void 0 === type.defaultProps &&
          null === Component.compare
        )
          return (
            (Component = resolveFunctionForHotReloading(type)),
            (workInProgress.tag = 15),
            (workInProgress.type = Component),
            validateFunctionComponentInDev(workInProgress, type),
            updateSimpleMemoComponent(
              current,
              workInProgress,
              Component,
              nextProps,
              renderLanes
            )
          );
        current = createFiberFromTypeAndProps(
          Component.type,
          null,
          nextProps,
          workInProgress,
          workInProgress.mode,
          renderLanes
        );
        current.ref = workInProgress.ref;
        current.return = workInProgress;
        return (workInProgress.child = current);
      }
      type = current.child;
      if (!checkScheduledUpdateOrContext(current, renderLanes)) {
        var prevProps = type.memoizedProps;
        Component = Component.compare;
        Component = null !== Component ? Component : shallowEqual;
        if (
          Component(prevProps, nextProps) &&
          current.ref === workInProgress.ref
        )
          return bailoutOnAlreadyFinishedWork(
            current,
            workInProgress,
            renderLanes
          );
      }
      workInProgress.flags |= 1;
      current = createWorkInProgress(type, nextProps);
      current.ref = workInProgress.ref;
      current.return = workInProgress;
      return (workInProgress.child = current);
    }
    function updateSimpleMemoComponent(
      current,
      workInProgress,
      Component,
      nextProps,
      renderLanes
    ) {
      if (null !== current) {
        var prevProps = current.memoizedProps;
        if (
          shallowEqual(prevProps, nextProps) &&
          current.ref === workInProgress.ref &&
          workInProgress.type === current.type
        )
          if (
            ((didReceiveUpdate = !1),
            (workInProgress.pendingProps = nextProps = prevProps),
            checkScheduledUpdateOrContext(current, renderLanes))
          )
            0 !== (current.flags & 131072) && (didReceiveUpdate = !0);
          else
            return (
              (workInProgress.lanes = current.lanes),
              bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)
            );
      }
      return updateFunctionComponent(
        current,
        workInProgress,
        Component,
        nextProps,
        renderLanes
      );
    }
    function updateOffscreenComponent(
      current,
      workInProgress,
      renderLanes,
      nextProps
    ) {
      var nextChildren = nextProps.children,
        prevState = null !== current ? current.memoizedState : null;
      null === current &&
        null === workInProgress.stateNode &&
        (workInProgress.stateNode = {
          _visibility: OffscreenVisible,
          _pendingMarkers: null,
          _retryCache: null,
          _transitions: null
        });
      if ("hidden" === nextProps.mode) {
        if (0 !== (workInProgress.flags & 128)) {
          prevState =
            null !== prevState
              ? prevState.baseLanes | renderLanes
              : renderLanes;
          if (null !== current) {
            nextProps = workInProgress.child = current.child;
            for (nextChildren = 0; null !== nextProps; )
              (nextChildren =
                nextChildren | nextProps.lanes | nextProps.childLanes),
                (nextProps = nextProps.sibling);
            nextProps = nextChildren & ~prevState;
          } else (nextProps = 0), (workInProgress.child = null);
          return deferHiddenOffscreenComponent(
            current,
            workInProgress,
            prevState,
            renderLanes,
            nextProps
          );
        }
        if (0 !== (renderLanes & 536870912))
          (workInProgress.memoizedState = { baseLanes: 0, cachePool: null }),
            null !== current &&
              pushTransition(
                workInProgress,
                null !== prevState ? prevState.cachePool : null
              ),
            null !== prevState
              ? pushHiddenContext(workInProgress, prevState)
              : reuseHiddenContextOnStack(workInProgress),
            pushOffscreenSuspenseHandler(workInProgress);
        else
          return (
            (nextProps = workInProgress.lanes = 536870912),
            deferHiddenOffscreenComponent(
              current,
              workInProgress,
              null !== prevState
                ? prevState.baseLanes | renderLanes
                : renderLanes,
              renderLanes,
              nextProps
            )
          );
      } else
        null !== prevState
          ? (pushTransition(workInProgress, prevState.cachePool),
            pushHiddenContext(workInProgress, prevState),
            reuseSuspenseHandlerOnStack(workInProgress),
            (workInProgress.memoizedState = null))
          : (null !== current && pushTransition(workInProgress, null),
            reuseHiddenContextOnStack(workInProgress),
            reuseSuspenseHandlerOnStack(workInProgress));
      reconcileChildren(current, workInProgress, nextChildren, renderLanes);
      return workInProgress.child;
    }
    function bailoutOffscreenComponent(current, workInProgress) {
      (null !== current && 22 === current.tag) ||
        null !== workInProgress.stateNode ||
        (workInProgress.stateNode = {
          _visibility: OffscreenVisible,
          _pendingMarkers: null,
          _retryCache: null,
          _transitions: null
        });
      return workInProgress.sibling;
    }
    function deferHiddenOffscreenComponent(
      current,
      workInProgress,
      nextBaseLanes,
      renderLanes,
      remainingChildLanes
    ) {
      var JSCompiler_inline_result = peekCacheFromPool();
      JSCompiler_inline_result =
        null === JSCompiler_inline_result
          ? null
          : {
              parent: CacheContext._currentValue,
              pool: JSCompiler_inline_result
            };
      workInProgress.memoizedState = {
        baseLanes: nextBaseLanes,
        cachePool: JSCompiler_inline_result
      };
      null !== current && pushTransition(workInProgress, null);
      reuseHiddenContextOnStack(workInProgress);
      pushOffscreenSuspenseHandler(workInProgress);
      null !== current &&
        propagateParentContextChanges(current, workInProgress, renderLanes, !0);
      workInProgress.childLanes = remainingChildLanes;
      return null;
    }
    function mountActivityChildren(workInProgress, nextProps) {
      var hiddenProp = nextProps.hidden;
      void 0 !== hiddenProp &&
        console.error(
          '<Activity> doesn\'t accept a hidden prop. Use mode="hidden" instead.\n- <Activity %s>\n+ <Activity %s>',
          !0 === hiddenProp
            ? "hidden"
            : !1 === hiddenProp
              ? "hidden={false}"
              : "hidden={...}",
          hiddenProp ? 'mode="hidden"' : 'mode="visible"'
        );
      nextProps = mountWorkInProgressOffscreenFiber(
        { mode: nextProps.mode, children: nextProps.children },
        workInProgress.mode
      );
      nextProps.ref = workInProgress.ref;
      workInProgress.child = nextProps;
      nextProps.return = workInProgress;
      return nextProps;
    }
    function retryActivityComponentWithoutHydrating(
      current,
      workInProgress,
      renderLanes
    ) {
      reconcileChildFibers(workInProgress, current.child, null, renderLanes);
      current = mountActivityChildren(
        workInProgress,
        workInProgress.pendingProps
      );
      current.flags |= 2;
      popSuspenseHandler(workInProgress);
      workInProgress.memoizedState = null;
      return current;
    }
    function updateActivityComponent(current, workInProgress, renderLanes) {
      var nextProps = workInProgress.pendingProps,
        didSuspend = 0 !== (workInProgress.flags & 128);
      workInProgress.flags &= -129;
      if (null === current) {
        if (isHydrating) {
          if ("hidden" === nextProps.mode)
            return (
              (current = mountActivityChildren(workInProgress, nextProps)),
              (workInProgress.lanes = 536870912),
              bailoutOffscreenComponent(null, current)
            );
          pushDehydratedActivitySuspenseHandler(workInProgress);
          (current = nextHydratableInstance)
            ? ((renderLanes = canHydrateHydrationBoundary(
                current,
                rootOrSingletonContext
              )),
              (renderLanes =
                null !== renderLanes && renderLanes.data === ACTIVITY_START_DATA
                  ? renderLanes
                  : null),
              null !== renderLanes &&
                ((nextProps = {
                  dehydrated: renderLanes,
                  treeContext: getSuspendedTreeContext(),
                  retryLane: 536870912,
                  hydrationErrors: null
                }),
                (workInProgress.memoizedState = nextProps),
                (nextProps = createFiberFromDehydratedFragment(renderLanes)),
                (nextProps.return = workInProgress),
                (workInProgress.child = nextProps),
                (hydrationParentFiber = workInProgress),
                (nextHydratableInstance = null)))
            : (renderLanes = null);
          if (null === renderLanes)
            throw (
              (warnNonHydratedInstance(workInProgress, current),
              throwOnHydrationMismatch(workInProgress))
            );
          workInProgress.lanes = 536870912;
          return null;
        }
        return mountActivityChildren(workInProgress, nextProps);
      }
      var prevState = current.memoizedState;
      if (null !== prevState) {
        var activityInstance = prevState.dehydrated;
        pushDehydratedActivitySuspenseHandler(workInProgress);
        if (didSuspend)
          if (workInProgress.flags & 256)
            (workInProgress.flags &= -257),
              (workInProgress = retryActivityComponentWithoutHydrating(
                current,
                workInProgress,
                renderLanes
              ));
          else if (null !== workInProgress.memoizedState)
            (workInProgress.child = current.child),
              (workInProgress.flags |= 128),
              (workInProgress = null);
          else
            throw Error(
              "Client rendering an Activity suspended it again. This is a bug in React."
            );
        else if (
          (warnIfHydrating(),
          0 !== (renderLanes & 536870912) &&
            markRenderDerivedCause(workInProgress),
          didReceiveUpdate ||
            propagateParentContextChanges(
              current,
              workInProgress,
              renderLanes,
              !1
            ),
          (didSuspend = 0 !== (renderLanes & current.childLanes)),
          didReceiveUpdate || didSuspend)
        ) {
          nextProps = workInProgressRoot;
          if (
            null !== nextProps &&
            ((activityInstance = getBumpedLaneForHydration(
              nextProps,
              renderLanes
            )),
            0 !== activityInstance && activityInstance !== prevState.retryLane)
          )
            throw (
              ((prevState.retryLane = activityInstance),
              enqueueConcurrentRenderForLane(current, activityInstance),
              scheduleUpdateOnFiber(nextProps, current, activityInstance),
              SelectiveHydrationException)
            );
          renderDidSuspendDelayIfPossible();
          workInProgress = retryActivityComponentWithoutHydrating(
            current,
            workInProgress,
            renderLanes
          );
        } else
          (current = prevState.treeContext),
            (nextHydratableInstance = getNextHydratable(
              activityInstance.nextSibling
            )),
            (hydrationParentFiber = workInProgress),
            (isHydrating = !0),
            (hydrationErrors = null),
            (didSuspendOrErrorDEV = !1),
            (hydrationDiffRootDEV = null),
            (rootOrSingletonContext = !1),
            null !== current &&
              restoreSuspendedTreeContext(workInProgress, current),
            (workInProgress = mountActivityChildren(workInProgress, nextProps)),
            (workInProgress.flags |= 4096);
        return workInProgress;
      }
      prevState = current.child;
      nextProps = { mode: nextProps.mode, children: nextProps.children };
      0 !== (renderLanes & 536870912) &&
        0 !== (renderLanes & current.lanes) &&
        markRenderDerivedCause(workInProgress);
      current = createWorkInProgress(prevState, nextProps);
      current.ref = workInProgress.ref;
      workInProgress.child = current;
      current.return = workInProgress;
      return current;
    }
    function markRef(current, workInProgress) {
      var ref = workInProgress.ref;
      if (null === ref)
        null !== current &&
          null !== current.ref &&
          (workInProgress.flags |= 4194816);
      else {
        if ("function" !== typeof ref && "object" !== typeof ref)
          throw Error(
            "Expected ref to be a function, an object returned by React.createRef(), or undefined/null."
          );
        if (null === current || current.ref !== ref)
          workInProgress.flags |= 4194816;
      }
    }
    function updateFunctionComponent(
      current,
      workInProgress,
      Component,
      nextProps,
      renderLanes
    ) {
      if (
        Component.prototype &&
        "function" === typeof Component.prototype.render
      ) {
        var componentName = getComponentNameFromType(Component) || "Unknown";
        didWarnAboutBadClass[componentName] ||
          (console.error(
            "The <%s /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.",
            componentName,
            componentName
          ),
          (didWarnAboutBadClass[componentName] = !0));
      }
      workInProgress.mode & StrictLegacyMode &&
        ReactStrictModeWarnings.recordLegacyContextWarning(
          workInProgress,
          null
        );
      null === current &&
        (validateFunctionComponentInDev(workInProgress, workInProgress.type),
        Component.contextTypes &&
          ((componentName = getComponentNameFromType(Component) || "Unknown"),
          didWarnAboutContextTypes[componentName] ||
            ((didWarnAboutContextTypes[componentName] = !0),
            console.error(
              "%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)",
              componentName
            ))));
      prepareToReadContext(workInProgress);
      Component = renderWithHooks(
        current,
        workInProgress,
        Component,
        nextProps,
        void 0,
        renderLanes
      );
      nextProps = checkDidRenderIdHook();
      if (null !== current && !didReceiveUpdate)
        return (
          bailoutHooks(current, workInProgress, renderLanes),
          bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)
        );
      isHydrating && nextProps && pushMaterializedTreeId(workInProgress);
      workInProgress.flags |= 1;
      reconcileChildren(current, workInProgress, Component, renderLanes);
      return workInProgress.child;
    }
    function replayFunctionComponent(
      current,
      workInProgress,
      nextProps,
      Component,
      secondArg,
      renderLanes
    ) {
      prepareToReadContext(workInProgress);
      hookTypesUpdateIndexDev = -1;
      ignorePreviousDependencies =
        null !== current && current.type !== workInProgress.type;
      workInProgress.updateQueue = null;
      nextProps = renderWithHooksAgain(
        workInProgress,
        Component,
        nextProps,
        secondArg
      );
      finishRenderingHooks(current, workInProgress);
      Component = checkDidRenderIdHook();
      if (null !== current && !didReceiveUpdate)
        return (
          bailoutHooks(current, workInProgress, renderLanes),
          bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes)
        );
      isHydrating && Component && pushMaterializedTreeId(workInProgress);
      workInProgress.flags |= 1;
      reconcileChildren(current, workInProgress, nextProps, renderLanes);
      return workInProgress.child;
    }
    function updateClassComponent(
      current,
      workInProgress,
      Component,
      nextProps,
      renderLanes
    ) {
      switch (shouldErrorImpl(workInProgress)) {
        case !1:
          var _instance = workInProgress.stateNode,
            state = new workInProgress.type(
              workInProgress.memoizedProps,
              _instance.context
            ).state;
          _instance.updater.enqueueSetState(_instance, state, null);
          break;
        case !0:
          workInProgress.flags |= 128;
          workInProgress.flags |= 65536;
          _instance = Error("Simulated error coming from DevTools");
          var lane = renderLanes & -renderLanes;
          workInProgress.lanes |= lane;
          state = workInProgressRoot;
          if (null === state)
            throw Error(
              "Expected a work-in-progress root. This is a bug in React. Please file an issue."
            );
          lane = createClassErrorUpdate(lane);
          initializeClassErrorUpdate(
            lane,
            state,
            workInProgress,
            createCapturedValueAtFiber(_instance, workInProgress)
          );
          enqueueCapturedUpdate(workInProgress, lane);
      }
      prepareToReadContext(workInProgress);
      if (null === workInProgress.stateNode) {
        state = emptyContextObject;
        _instance = Component.contextType;
        "contextType" in Component &&
          null !== _instance &&
          (void 0 === _instance || _instance.$$typeof !== REACT_CONTEXT_TYPE) &&
          !didWarnAboutInvalidateContextType.has(Component) &&
          (didWarnAboutInvalidateContextType.add(Component),
          (lane =
            void 0 === _instance
              ? " However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file."
              : "object" !== typeof _instance
                ? " However, it is set to a " + typeof _instance + "."
                : _instance.$$typeof === REACT_CONSUMER_TYPE
                  ? " Did you accidentally pass the Context.Consumer instead?"
                  : " However, it is set to an object with keys {" +
                    Object.keys(_instance).join(", ") +
                    "}."),
          console.error(
            "%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s",
            getComponentNameFromType(Component) || "Component",
            lane
          ));
        "object" === typeof _instance &&
          null !== _instance &&
          (state = readContext(_instance));
        _instance = new Component(nextProps, state);
        if (workInProgress.mode & StrictLegacyMode) {
          setIsStrictModeForDevtools(!0);
          try {
            _instance = new Component(nextProps, state);
          } finally {
            setIsStrictModeForDevtools(!1);
          }
        }
        state = workInProgress.memoizedState =
          null !== _instance.state && void 0 !== _instance.state
            ? _instance.state
            : null;
        _instance.updater = classComponentUpdater;
        workInProgress.stateNode = _instance;
        _instance._reactInternals = workInProgress;
        _instance._reactInternalInstance = fakeInternalInstance;
        "function" === typeof Component.getDerivedStateFromProps &&
          null === state &&
          ((state = getComponentNameFromType(Component) || "Component"),
          didWarnAboutUninitializedState.has(state) ||
            (didWarnAboutUninitializedState.add(state),
            console.error(
              "`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.",
              state,
              null === _instance.state ? "null" : "undefined",
              state
            )));
        if (
          "function" === typeof Component.getDerivedStateFromProps ||
          "function" === typeof _instance.getSnapshotBeforeUpdate
        ) {
          var foundWillUpdateName = (lane = state = null);
          "function" === typeof _instance.componentWillMount &&
          !0 !== _instance.componentWillMount.__suppressDeprecationWarning
            ? (state = "componentWillMount")
            : "function" === typeof _instance.UNSAFE_componentWillMount &&
              (state = "UNSAFE_componentWillMount");
          "function" === typeof _instance.componentWillReceiveProps &&
          !0 !==
            _instance.componentWillReceiveProps.__suppressDeprecationWarning
            ? (lane = "componentWillReceiveProps")
            : "function" ===
                typeof _instance.UNSAFE_componentWillReceiveProps &&
              (lane = "UNSAFE_componentWillReceiveProps");
          "function" === typeof _instance.componentWillUpdate &&
          !0 !== _instance.componentWillUpdate.__suppressDeprecationWarning
            ? (foundWillUpdateName = "componentWillUpdate")
            : "function" === typeof _instance.UNSAFE_componentWillUpdate &&
              (foundWillUpdateName = "UNSAFE_componentWillUpdate");
          if (null !== state || null !== lane || null !== foundWillUpdateName) {
            _instance = getComponentNameFromType(Component) || "Component";
            var newApiName =
              "function" === typeof Component.getDerivedStateFromProps
                ? "getDerivedStateFromProps()"
                : "getSnapshotBeforeUpdate()";
            didWarnAboutLegacyLifecyclesAndDerivedState.has(_instance) ||
              (didWarnAboutLegacyLifecyclesAndDerivedState.add(_instance),
              console.error(
                "Unsafe legacy lifecycles will not be called for components using new component APIs.\n\n%s uses %s but also contains the following legacy lifecycles:%s%s%s\n\nThe above lifecycles should be removed. Learn more about this warning here:\nhttps://react.dev/link/unsafe-component-lifecycles",
                _instance,
                newApiName,
                null !== state ? "\n  " + state : "",
                null !== lane ? "\n  " + lane : "",
                null !== foundWillUpdateName ? "\n  " + foundWillUpdateName : ""
              ));
          }
        }
        _instance = workInProgress.stateNode;
        state = getComponentNameFromType(Component) || "Component";
        _instance.render ||
          (Component.prototype &&
          "function" === typeof Component.prototype.render
            ? console.error(
                "No `render` method found on the %s instance: did you accidentally return an object from the constructor?",
                state
              )
            : console.error(
                "No `render` method found on the %s instance: you may have forgotten to define `render`.",
                state
              ));
        !_instance.getInitialState ||
          _instance.getInitialState.isReactClassApproved ||
          _instance.state ||
          console.error(
            "getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?",
            state
          );
        _instance.getDefaultProps &&
          !_instance.getDefaultProps.isReactClassApproved &&
          console.error(
            "getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.",
            state
          );
        _instance.contextType &&
          console.error(
            "contextType was defined as an instance property on %s. Use a static property to define contextType instead.",
            state
          );
        Component.childContextTypes &&
          !didWarnAboutChildContextTypes.has(Component) &&
          (didWarnAboutChildContextTypes.add(Component),
          console.error(
            "%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)",
            state
          ));
        Component.contextTypes &&
          !didWarnAboutContextTypes$1.has(Component) &&
          (didWarnAboutContextTypes$1.add(Component),
          console.error(
            "%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)",
            state
          ));
        "function" === typeof _instance.componentShouldUpdate &&
          console.error(
            "%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",
            state
          );
        Component.prototype &&
          Component.prototype.isPureReactComponent &&
          "undefined" !== typeof _instance.shouldComponentUpdate &&
          console.error(
            "%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.",
            getComponentNameFromType(Component) || "A pure component"
          );
        "function" === typeof _instance.componentDidUnmount &&
          console.error(
            "%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?",
            state
          );
        "function" === typeof _instance.componentDidReceiveProps &&
          console.error(
            "%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().",
            state
          );
        "function" === typeof _instance.componentWillRecieveProps &&
          console.error(
            "%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?",
            state
          );
        "function" === typeof _instance.UNSAFE_componentWillRecieveProps &&
          console.error(
            "%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?",
            state
          );
        lane = _instance.props !== nextProps;
        void 0 !== _instance.props &&
          lane &&
          console.error(
            "When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.",
            state
          );
        _instance.defaultProps &&
          console.error(
            "Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.",
            state,
            state
          );
        "function" !== typeof _instance.getSnapshotBeforeUpdate ||
          "function" === typeof _instance.componentDidUpdate ||
          didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.has(Component) ||
          (didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate.add(Component),
          console.error(
            "%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.",
            getComponentNameFromType(Component)
          ));
        "function" === typeof _instance.getDerivedStateFromProps &&
          console.error(
            "%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.",
            state
          );
        "function" === typeof _instance.getDerivedStateFromError &&
          console.error(
            "%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.",
            state
          );
        "function" === typeof Component.getSnapshotBeforeUpdate &&
          console.error(
            "%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.",
            state
          );
        (lane = _instance.state) &&
          ("object" !== typeof lane || isArrayImpl(lane)) &&
          console.error("%s.state: must be set to an object or null", state);
        "function" === typeof _instance.getChildContext &&
          "object" !== typeof Component.childContextTypes &&
          console.error(
            "%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().",
            state
          );
        _instance = workInProgress.stateNode;
        _instance.props = nextProps;
        _instance.state = workInProgress.memoizedState;
        _instance.refs = {};
        initializeUpdateQueue(workInProgress);
        state = Component.contextType;
        _instance.context =
          "object" === typeof state && null !== state
            ? readContext(state)
            : emptyContextObject;
        _instance.state === nextProps &&
          ((state = getComponentNameFromType(Component) || "Component"),
          didWarnAboutDirectlyAssigningPropsToState.has(state) ||
            (didWarnAboutDirectlyAssigningPropsToState.add(state),
            console.error(
              "%s: It is not recommended to assign props directly to state because updates to props won't be reflected in state. In most cases, it is better to use props directly.",
              state
            )));
        workInProgress.mode & StrictLegacyMode &&
          ReactStrictModeWarnings.recordLegacyContextWarning(
            workInProgress,
            _instance
          );
        ReactStrictModeWarnings.recordUnsafeLifecycleWarnings(
          workInProgress,
          _instance
        );
        _instance.state = workInProgress.memoizedState;
        state = Component.getDerivedStateFromProps;
        "function" === typeof state &&
          (applyDerivedStateFromProps(
            workInProgress,
            Component,
            state,
            nextProps
          ),
          (_instance.state = workInProgress.memoizedState));
        "function" === typeof Component.getDerivedStateFromProps ||
          "function" === typeof _instance.getSnapshotBeforeUpdate ||
          ("function" !== typeof _instance.UNSAFE_componentWillMount &&
            "function" !== typeof _instance.componentWillMount) ||
          ((state = _instance.state),
          "function" === typeof _instance.componentWillMount &&
            _instance.componentWillMount(),
          "function" === typeof _instance.UNSAFE_componentWillMount &&
            _instance.UNSAFE_componentWillMount(),
          state !== _instance.state &&
            (console.error(
              "%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",
              getComponentNameFromFiber(workInProgress) || "Component"
            ),
            classComponentUpdater.enqueueReplaceState(
              _instance,
              _instance.state,
              null
            )),
          processUpdateQueue(workInProgress, nextProps, _instance, renderLanes),
          suspendIfUpdateReadFromEntangledAsyncAction(),
          (_instance.state = workInProgress.memoizedState));
        "function" === typeof _instance.componentDidMount &&
          (workInProgress.flags |= 4194308);
        (workInProgress.mode & StrictEffectsMode) !== NoMode &&
          (workInProgress.flags |= 134217728);
        _instance = !0;
      } else if (null === current) {
        _instance = workInProgress.stateNode;
        var unresolvedOldProps = workInProgress.memoizedProps;
        lane = resolveClassComponentProps(Component, unresolvedOldProps);
        _instance.props = lane;
        var oldContext = _instance.context;
        foundWillUpdateName = Component.contextType;
        state = emptyContextObject;
        "object" === typeof foundWillUpdateName &&
          null !== foundWillUpdateName &&
          (state = readContext(foundWillUpdateName));
        newApiName = Component.getDerivedStateFromProps;
        foundWillUpdateName =
          "function" === typeof newApiName ||
          "function" === typeof _instance.getSnapshotBeforeUpdate;
        unresolvedOldProps = workInProgress.pendingProps !== unresolvedOldProps;
        foundWillUpdateName ||
          ("function" !== typeof _instance.UNSAFE_componentWillReceiveProps &&
            "function" !== typeof _instance.componentWillReceiveProps) ||
          ((unresolvedOldProps || oldContext !== state) &&
            callComponentWillReceiveProps(
              workInProgress,
              _instance,
              nextProps,
              state
            ));
        hasForceUpdate = !1;
        var oldState = workInProgress.memoizedState;
        _instance.state = oldState;
        processUpdateQueue(workInProgress, nextProps, _instance, renderLanes);
        suspendIfUpdateReadFromEntangledAsyncAction();
        oldContext = workInProgress.memoizedState;
        unresolvedOldProps || oldState !== oldContext || hasForceUpdate
          ? ("function" === typeof newApiName &&
              (applyDerivedStateFromProps(
                workInProgress,
                Component,
                newApiName,
                nextProps
              ),
              (oldContext = workInProgress.memoizedState)),
            (lane =
              hasForceUpdate ||
              checkShouldComponentUpdate(
                workInProgress,
                Component,
                lane,
                nextProps,
                oldState,
                oldContext,
                state
              ))
              ? (foundWillUpdateName ||
                  ("function" !== typeof _instance.UNSAFE_componentWillMount &&
                    "function" !== typeof _instance.componentWillMount) ||
                  ("function" === typeof _instance.componentWillMount &&
                    _instance.componentWillMount(),
                  "function" === typeof _instance.UNSAFE_componentWillMount &&
                    _instance.UNSAFE_componentWillMount()),
                "function" === typeof _instance.componentDidMount &&
                  (workInProgress.flags |= 4194308),
                (workInProgress.mode & StrictEffectsMode) !== NoMode &&
                  (workInProgress.flags |= 134217728))
              : ("function" === typeof _instance.componentDidMount &&
                  (workInProgress.flags |= 4194308),
                (workInProgress.mode & StrictEffectsMode) !== NoMode &&
                  (workInProgress.flags |= 134217728),
                (workInProgress.memoizedProps = nextProps),
                (workInProgress.memoizedState = oldContext)),
            (_instance.props = nextProps),
            (_instance.state = oldContext),
            (_instance.context = state),
            (_instance = lane))
          : ("function" === typeof _instance.componentDidMount &&
              (workInProgress.flags |= 4194308),
            (workInProgress.mode & StrictEffectsMode) !== NoMode &&
              (workInProgress.flags |= 134217728),
            (_instance = !1));
      } else {
        _instance = workInProgress.stateNode;
        cloneUpdateQueue(current, workInProgress);
        state = workInProgress.memoizedProps;
        foundWillUpdateName = resolveClassComponentProps(Component, state);
        _instance.props = foundWillUpdateName;
        newApiName = workInProgress.pendingProps;
        oldState = _instance.context;
        oldContext = Component.contextType;
        lane = emptyContextObject;
        "object" === typeof oldContext &&
          null !== oldContext &&
          (lane = readContext(oldContext));
        unresolvedOldProps = Component.getDerivedStateFromProps;
        (oldContext =
          "function" === typeof unresolvedOldProps ||
          "function" === typeof _instance.getSnapshotBeforeUpdate) ||
          ("function" !== typeof _instance.UNSAFE_componentWillReceiveProps &&
            "function" !== typeof _instance.componentWillReceiveProps) ||
          ((state !== newApiName || oldState !== lane) &&
            callComponentWillReceiveProps(
              workInProgress,
              _instance,
              nextProps,
              lane
            ));
        hasForceUpdate = !1;
        oldState = workInProgress.memoizedState;
        _instance.state = oldState;
        processUpdateQueue(workInProgress, nextProps, _instance, renderLanes);
        suspendIfUpdateReadFromEntangledAsyncAction();
        var newState = workInProgress.memoizedState;
        state !== newApiName ||
        oldState !== newState ||
        hasForceUpdate ||
        (null !== current &&
          null !== current.dependencies &&
          checkIfContextChanged(current.dependencies))
          ? ("function" === typeof unresolvedOldProps &&
              (applyDerivedStateFromProps(
                workInProgress,
                Component,
                unresolvedOldProps,
                nextProps
              ),
              (newState = workInProgress.memoizedState)),
            (foundWillUpdateName =
              hasForceUpdate ||
              checkShouldComponentUpdate(
                workInProgress,
                Component,
                foundWillUpdateName,
                nextProps,
                oldState,
                newState,
                lane
              ) ||
              (null !== current &&
                null !== current.dependencies &&
                checkIfContextChanged(current.dependencies)))
              ? (oldContext ||
                  ("function" !== typeof _instance.UNSAFE_componentWillUpdate &&
                    "function" !== typeof _instance.componentWillUpdate) ||
                  ("function" === typeof _instance.componentWillUpdate &&
                    _instance.componentWillUpdate(nextProps, newState, lane),
                  "function" === typeof _instance.UNSAFE_componentWillUpdate &&
                    _instance.UNSAFE_componentWillUpdate(
                      nextProps,
                      newState,
                      lane
                    )),
                "function" === typeof _instance.componentDidUpdate &&
                  (workInProgress.flags |= 4),
                "function" === typeof _instance.getSnapshotBeforeUpdate &&
                  (workInProgress.flags |= 1024))
              : ("function" !== typeof _instance.componentDidUpdate ||
                  (state === current.memoizedProps &&
                    oldState === current.memoizedState) ||
                  (workInProgress.flags |= 4),
                "function" !== typeof _instance.getSnapshotBeforeUpdate ||
                  (state === current.memoizedProps &&
                    oldState === current.memoizedState) ||
                  (workInProgress.flags |= 1024),
                (workInProgress.memoizedProps = nextProps),
                (workInProgress.memoizedState = newState)),
            (_instance.props = nextProps),
            (_instance.state = newState),
            (_instance.context = lane),
            (_instance = foundWillUpdateName))
          : ("function" !== typeof _instance.componentDidUpdate ||
              (state === current.memoizedProps &&
                oldState === current.memoizedState) ||
              (workInProgress.flags |= 4),
            "function" !== typeof _instance.getSnapshotBeforeUpdate ||
              (state === current.memoizedProps &&
                oldState === current.memoizedState) ||
              (workInProgress.flags |= 1024),
            (_instance = !1));
      }
      lane = _instance;
      markRef(current, workInProgress);
      state = 0 !== (workInProgress.flags & 128);
      if (lane || state) {
        lane = workInProgress.stateNode;
        setCurrentFiber(workInProgress);
        if (state && "function" !== typeof Component.getDerivedStateFromError)
          (Component = null), (profilerStartTime = -1);
        else if (
          ((Component = callRenderInDEV(lane)),
          workInProgress.mode & StrictLegacyMode)
        ) {
          setIsStrictModeForDevtools(!0);
          try {
            callRenderInDEV(lane);
          } finally {
            setIsStrictModeForDevtools(!1);
          }
        }
        workInProgress.flags |= 1;
        null !== current && state
          ? ((workInProgress.child = reconcileChildFibers(
              workInProgress,
              current.child,
              null,
              renderLanes
            )),
            (workInProgress.child = reconcileChildFibers(
              workInProgress,
              null,
              Component,
              renderLanes
            )))
          : reconcileChildren(current, workInProgress, Component, renderLanes);
        workInProgress.memoizedState = lane.state;
        current = workInProgress.child;
      } else
        current = bailoutOnAlreadyFinishedWork(
          current,
          workInProgress,
          renderLanes
        );
      renderLanes = workInProgress.stateNode;
      _instance &&
        renderLanes.props !== nextProps &&
        (didWarnAboutReassigningProps ||
          console.error(
            "It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.",
            getComponentNameFromFiber(workInProgress) || "a component"
          ),
        (didWarnAboutReassigningProps = !0));
      return current;
    }
    function mountHostRootWithoutHydrating(
      current,
      workInProgress,
      nextChildren,
      renderLanes
    ) {
      resetHydrationState();
      workInProgress.flags |= 256;
      reconcileChildren(current, workInProgress, nextChildren, renderLanes);
      return workInProgress.child;
    }
    function validateFunctionComponentInDev(workInProgress, Component) {
      Component &&
        Component.childContextTypes &&
        console.error(
          "childContextTypes cannot be defined on a function component.\n  %s.childContextTypes = ...",
          Component.displayName || Component.name || "Component"
        );
      "function" === typeof Component.getDerivedStateFromProps &&
        ((workInProgress = getComponentNameFromType(Component) || "Unknown"),
        didWarnAboutGetDerivedStateOnFunctionComponent[workInProgress] ||
          (console.error(
            "%s: Function components do not support getDerivedStateFromProps.",
            workInProgress
          ),
          (didWarnAboutGetDerivedStateOnFunctionComponent[workInProgress] =
            !0)));
      "object" === typeof Component.contextType &&
        null !== Component.contextType &&
        ((Component = getComponentNameFromType(Component) || "Unknown"),
        didWarnAboutContextTypeOnFunctionComponent[Component] ||
          (console.error(
            "%s: Function components do not support contextType.",
            Component
          ),
          (didWarnAboutContextTypeOnFunctionComponent[Component] = !0)));
    }
    function mountSuspenseOffscreenState(renderLanes) {
      return { baseLanes: renderLanes, cachePool: getSuspendedCache() };
    }
    function getRemainingWorkInPrimaryTree(
      current,
      primaryTreeDidDefer,
      renderLanes
    ) {
      current = null !== current ? current.childLanes & ~renderLanes : 0;
      primaryTreeDidDefer && (current |= workInProgressDeferredLane);
      return current;
    }
    function updateSuspenseComponent(current, workInProgress, renderLanes) {
      var JSCompiler_object_inline_digest_2724;
      var JSCompiler_object_inline_stack_2725 = workInProgress.pendingProps;
      shouldSuspendImpl(workInProgress) && (workInProgress.flags |= 128);
      var JSCompiler_object_inline_message_2723 = !1;
      var didSuspend = 0 !== (workInProgress.flags & 128);
      (JSCompiler_object_inline_digest_2724 = didSuspend) ||
        (JSCompiler_object_inline_digest_2724 =
          null !== current && null === current.memoizedState
            ? !1
            : 0 !== (suspenseStackCursor.current & ForceSuspenseFallback));
      JSCompiler_object_inline_digest_2724 &&
        ((JSCompiler_object_inline_message_2723 = !0),
        (workInProgress.flags &= -129));
      JSCompiler_object_inline_digest_2724 = 0 !== (workInProgress.flags & 32);
      workInProgress.flags &= -33;
      if (null === current) {
        if (isHydrating) {
          JSCompiler_object_inline_message_2723
            ? pushPrimaryTreeSuspenseHandler(workInProgress)
            : reuseSuspenseHandlerOnStack(workInProgress);
          (current = nextHydratableInstance)
            ? ((renderLanes = canHydrateHydrationBoundary(
                current,
                rootOrSingletonContext
              )),
              (renderLanes =
                null !== renderLanes && renderLanes.data !== ACTIVITY_START_DATA
                  ? renderLanes
                  : null),
              null !== renderLanes &&
                ((JSCompiler_object_inline_digest_2724 = {
                  dehydrated: renderLanes,
                  treeContext: getSuspendedTreeContext(),
                  retryLane: 536870912,
                  hydrationErrors: null
                }),
                (workInProgress.memoizedState =
                  JSCompiler_object_inline_digest_2724),
                (JSCompiler_object_inline_digest_2724 =
                  createFiberFromDehydratedFragment(renderLanes)),
                (JSCompiler_object_inline_digest_2724.return = workInProgress),
                (workInProgress.child = JSCompiler_object_inline_digest_2724),
                (hydrationParentFiber = workInProgress),
                (nextHydratableInstance = null)))
            : (renderLanes = null);
          if (null === renderLanes)
            throw (
              (warnNonHydratedInstance(workInProgress, current),
              throwOnHydrationMismatch(workInProgress))
            );
          isSuspenseInstanceFallback(renderLanes)
            ? (workInProgress.lanes = 32)
            : (workInProgress.lanes = 536870912);
          return null;
        }
        var nextPrimaryChildren = JSCompiler_object_inline_stack_2725.children;
        JSCompiler_object_inline_stack_2725 =
          JSCompiler_object_inline_stack_2725.fallback;
        if (JSCompiler_object_inline_message_2723) {
          reuseSuspenseHandlerOnStack(workInProgress);
          var mode = workInProgress.mode;
          nextPrimaryChildren = mountWorkInProgressOffscreenFiber(
            { mode: "hidden", children: nextPrimaryChildren },
            mode
          );
          JSCompiler_object_inline_stack_2725 = createFiberFromFragment(
            JSCompiler_object_inline_stack_2725,
            mode,
            renderLanes,
            null
          );
          nextPrimaryChildren.return = workInProgress;
          JSCompiler_object_inline_stack_2725.return = workInProgress;
          nextPrimaryChildren.sibling = JSCompiler_object_inline_stack_2725;
          workInProgress.child = nextPrimaryChildren;
          JSCompiler_object_inline_stack_2725 = workInProgress.child;
          JSCompiler_object_inline_stack_2725.memoizedState =
            mountSuspenseOffscreenState(renderLanes);
          JSCompiler_object_inline_stack_2725.childLanes =
            getRemainingWorkInPrimaryTree(
              current,
              JSCompiler_object_inline_digest_2724,
              renderLanes
            );
          workInProgress.memoizedState = SUSPENDED_MARKER;
          return bailoutOffscreenComponent(
            null,
            JSCompiler_object_inline_stack_2725
          );
        }
        pushPrimaryTreeSuspenseHandler(workInProgress);
        return mountSuspensePrimaryChildren(
          workInProgress,
          nextPrimaryChildren
        );
      }
      var prevState = current.memoizedState;
      if (null !== prevState) {
        var JSCompiler_object_inline_componentStack_2726 = prevState.dehydrated;
        if (null !== JSCompiler_object_inline_componentStack_2726) {
          if (didSuspend)
            workInProgress.flags & 256
              ? (pushPrimaryTreeSuspenseHandler(workInProgress),
                (workInProgress.flags &= -257),
                (workInProgress = retrySuspenseComponentWithoutHydrating(
                  current,
                  workInProgress,
                  renderLanes
                )))
              : null !== workInProgress.memoizedState
                ? (reuseSuspenseHandlerOnStack(workInProgress),
                  (workInProgress.child = current.child),
                  (workInProgress.flags |= 128),
                  (workInProgress = null))
                : (reuseSuspenseHandlerOnStack(workInProgress),
                  (nextPrimaryChildren =
                    JSCompiler_object_inline_stack_2725.fallback),
                  (mode = workInProgress.mode),
                  (JSCompiler_object_inline_stack_2725 =
                    mountWorkInProgressOffscreenFiber(
                      {
                        mode: "visible",
                        children: JSCompiler_object_inline_stack_2725.children
                      },
                      mode
                    )),
                  (nextPrimaryChildren = createFiberFromFragment(
                    nextPrimaryChildren,
                    mode,
                    renderLanes,
                    null
                  )),
                  (nextPrimaryChildren.flags |= 2),
                  (JSCompiler_object_inline_stack_2725.return = workInProgress),
                  (nextPrimaryChildren.return = workInProgress),
                  (JSCompiler_object_inline_stack_2725.sibling =
                    nextPrimaryChildren),
                  (workInProgress.child = JSCompiler_object_inline_stack_2725),
                  reconcileChildFibers(
                    workInProgress,
                    current.child,
                    null,
                    renderLanes
                  ),
                  (JSCompiler_object_inline_stack_2725 = workInProgress.child),
                  (JSCompiler_object_inline_stack_2725.memoizedState =
                    mountSuspenseOffscreenState(renderLanes)),
                  (JSCompiler_object_inline_stack_2725.childLanes =
                    getRemainingWorkInPrimaryTree(
                      current,
                      JSCompiler_object_inline_digest_2724,
                      renderLanes
                    )),
                  (workInProgress.memoizedState = SUSPENDED_MARKER),
                  (workInProgress = bailoutOffscreenComponent(
                    null,
                    JSCompiler_object_inline_stack_2725
                  )));
          else if (
            (pushPrimaryTreeSuspenseHandler(workInProgress),
            warnIfHydrating(),
            0 !== (renderLanes & 536870912) &&
              markRenderDerivedCause(workInProgress),
            isSuspenseInstanceFallback(
              JSCompiler_object_inline_componentStack_2726
            ))
          ) {
            JSCompiler_object_inline_digest_2724 =
              JSCompiler_object_inline_componentStack_2726.nextSibling &&
              JSCompiler_object_inline_componentStack_2726.nextSibling.dataset;
            if (JSCompiler_object_inline_digest_2724) {
              nextPrimaryChildren = JSCompiler_object_inline_digest_2724.dgst;
              var message = JSCompiler_object_inline_digest_2724.msg;
              mode = JSCompiler_object_inline_digest_2724.stck;
              var componentStack = JSCompiler_object_inline_digest_2724.cstck;
            }
            JSCompiler_object_inline_message_2723 = message;
            JSCompiler_object_inline_digest_2724 = nextPrimaryChildren;
            JSCompiler_object_inline_stack_2725 = mode;
            JSCompiler_object_inline_componentStack_2726 = componentStack;
            nextPrimaryChildren = JSCompiler_object_inline_message_2723;
            mode = JSCompiler_object_inline_componentStack_2726;
            nextPrimaryChildren = nextPrimaryChildren
              ? Error(nextPrimaryChildren)
              : Error(
                  "The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering."
                );
            nextPrimaryChildren.stack =
              JSCompiler_object_inline_stack_2725 || "";
            nextPrimaryChildren.digest = JSCompiler_object_inline_digest_2724;
            JSCompiler_object_inline_digest_2724 =
              void 0 === mode ? null : mode;
            JSCompiler_object_inline_stack_2725 = {
              value: nextPrimaryChildren,
              source: null,
              stack: JSCompiler_object_inline_digest_2724
            };
            "string" === typeof JSCompiler_object_inline_digest_2724 &&
              CapturedStacks.set(
                nextPrimaryChildren,
                JSCompiler_object_inline_stack_2725
              );
            queueHydrationError(JSCompiler_object_inline_stack_2725);
            workInProgress = retrySuspenseComponentWithoutHydrating(
              current,
              workInProgress,
              renderLanes
            );
          } else if (
            (didReceiveUpdate ||
              propagateParentContextChanges(
                current,
                workInProgress,
                renderLanes,
                !1
              ),
            (JSCompiler_object_inline_digest_2724 =
              0 !== (renderLanes & current.childLanes)),
            didReceiveUpdate || JSCompiler_object_inline_digest_2724)
          ) {
            JSCompiler_object_inline_digest_2724 = workInProgressRoot;
            if (
              null !== JSCompiler_object_inline_digest_2724 &&
              ((JSCompiler_object_inline_stack_2725 = getBumpedLaneForHydration(
                JSCompiler_object_inline_digest_2724,
                renderLanes
              )),
              0 !== JSCompiler_object_inline_stack_2725 &&
                JSCompiler_object_inline_stack_2725 !== prevState.retryLane)
            )
              throw (
                ((prevState.retryLane = JSCompiler_object_inline_stack_2725),
                enqueueConcurrentRenderForLane(
                  current,
                  JSCompiler_object_inline_stack_2725
                ),
                scheduleUpdateOnFiber(
                  JSCompiler_object_inline_digest_2724,
                  current,
                  JSCompiler_object_inline_stack_2725
                ),
                SelectiveHydrationException)
              );
            isSuspenseInstancePending(
              JSCompiler_object_inline_componentStack_2726
            ) || renderDidSuspendDelayIfPossible();
            workInProgress = retrySuspenseComponentWithoutHydrating(
              current,
              workInProgress,
              renderLanes
            );
          } else
            isSuspenseInstancePending(
              JSCompiler_object_inline_componentStack_2726
            )
              ? ((workInProgress.flags |= 192),
                (workInProgress.child = current.child),
                (workInProgress = null))
              : ((current = prevState.treeContext),
                (nextHydratableInstance = getNextHydratable(
                  JSCompiler_object_inline_componentStack_2726.nextSibling
                )),
                (hydrationParentFiber = workInProgress),
                (isHydrating = !0),
                (hydrationErrors = null),
                (didSuspendOrErrorDEV = !1),
                (hydrationDiffRootDEV = null),
                (rootOrSingletonContext = !1),
                null !== current &&
                  restoreSuspendedTreeContext(workInProgress, current),
                (workInProgress = mountSuspensePrimaryChildren(
                  workInProgress,
                  JSCompiler_object_inline_stack_2725.children
                )),
                (workInProgress.flags |= 4096));
          return workInProgress;
        }
      }
      if (JSCompiler_object_inline_message_2723)
        return (
          reuseSuspenseHandlerOnStack(workInProgress),
          (nextPrimaryChildren = JSCompiler_object_inline_stack_2725.fallback),
          (mode = workInProgress.mode),
          (componentStack = current.child),
          (JSCompiler_object_inline_componentStack_2726 =
            componentStack.sibling),
          (JSCompiler_object_inline_stack_2725 = createWorkInProgress(
            componentStack,
            {
              mode: "hidden",
              children: JSCompiler_object_inline_stack_2725.children
            }
          )),
          (JSCompiler_object_inline_stack_2725.subtreeFlags =
            componentStack.subtreeFlags & 65011712),
          null !== JSCompiler_object_inline_componentStack_2726
            ? (nextPrimaryChildren = createWorkInProgress(
                JSCompiler_object_inline_componentStack_2726,
                nextPrimaryChildren
              ))
            : ((nextPrimaryChildren = createFiberFromFragment(
                nextPrimaryChildren,
                mode,
                renderLanes,
                null
              )),
              (nextPrimaryChildren.flags |= 2)),
          (nextPrimaryChildren.return = workInProgress),
          (JSCompiler_object_inline_stack_2725.return = workInProgress),
          (JSCompiler_object_inline_stack_2725.sibling = nextPrimaryChildren),
          (workInProgress.child = JSCompiler_object_inline_stack_2725),
          bailoutOffscreenComponent(null, JSCompiler_object_inline_stack_2725),
          (JSCompiler_object_inline_stack_2725 = workInProgress.child),
          (nextPrimaryChildren = current.child.memoizedState),
          null === nextPrimaryChildren
            ? (nextPrimaryChildren = mountSuspenseOffscreenState(renderLanes))
            : ((mode = nextPrimaryChildren.cachePool),
              null !== mode
                ? ((componentStack = CacheContext._currentValue),
                  (mode =
                    mode.parent !== componentStack
                      ? { parent: componentStack, pool: componentStack }
                      : mode))
                : (mode = getSuspendedCache()),
              (nextPrimaryChildren = {
                baseLanes: nextPrimaryChildren.baseLanes | renderLanes,
                cachePool: mode
              })),
          (JSCompiler_object_inline_stack_2725.memoizedState =
            nextPrimaryChildren),
          (JSCompiler_object_inline_stack_2725.childLanes =
            getRemainingWorkInPrimaryTree(
              current,
              JSCompiler_object_inline_digest_2724,
              renderLanes
            )),
          (workInProgress.memoizedState = SUSPENDED_MARKER),
          bailoutOffscreenComponent(
            current.child,
            JSCompiler_object_inline_stack_2725
          )
        );
      null !== prevState &&
        (renderLanes & 62914560) === renderLanes &&
        0 !== (renderLanes & current.lanes) &&
        markRenderDerivedCause(workInProgress);
      pushPrimaryTreeSuspenseHandler(workInProgress);
      renderLanes = current.child;
      current = renderLanes.sibling;
      renderLanes = createWorkInProgress(renderLanes, {
        mode: "visible",
        children: JSCompiler_object_inline_stack_2725.children
      });
      renderLanes.return = workInProgress;
      renderLanes.sibling = null;
      null !== current &&
        ((JSCompiler_object_inline_digest_2724 = workInProgress.deletions),
        null === JSCompiler_object_inline_digest_2724
          ? ((workInProgress.deletions = [current]),
            (workInProgress.flags |= 16))
          : JSCompiler_object_inline_digest_2724.push(current));
      workInProgress.child = renderLanes;
      workInProgress.memoizedState = null;
      return renderLanes;
    }
    function mountSuspensePrimaryChildren(workInProgress, primaryChildren) {
      primaryChildren = mountWorkInProgressOffscreenFiber(
        { mode: "visible", children: primaryChildren },
        workInProgress.mode
      );
      primaryChildren.return = workInProgress;
      return (workInProgress.child = primaryChildren);
    }
    function mountWorkInProgressOffscreenFiber(offscreenProps, mode) {
      offscreenProps = createFiber(22, offscreenProps, null, mode);
      offscreenProps.lanes = 0;
      return offscreenProps;
    }
    function retrySuspenseComponentWithoutHydrating(
      current,
      workInProgress,
      renderLanes
    ) {
      reconcileChildFibers(workInProgress, current.child, null, renderLanes);
      current = mountSuspensePrimaryChildren(
        workInProgress,
        workInProgress.pendingProps.children
      );
      current.flags |= 2;
      workInProgress.memoizedState = null;
      return current;
    }
    function scheduleSuspenseWorkOnFiber(fiber, renderLanes, propagationRoot) {
      fiber.lanes |= renderLanes;
      var alternate = fiber.alternate;
      null !== alternate && (alternate.lanes |= renderLanes);
      scheduleContextWorkOnParentPath(
        fiber.return,
        renderLanes,
        propagationRoot
      );
    }
    function initSuspenseListRenderState(
      workInProgress,
      isBackwards,
      tail,
      lastContentRow,
      tailMode,
      treeForkCount
    ) {
      var renderState = workInProgress.memoizedState;
      null === renderState
        ? (workInProgress.memoizedState = {
            isBackwards: isBackwards,
            rendering: null,
            renderingStartTime: 0,
            last: lastContentRow,
            tail: tail,
            tailMode: tailMode,
            treeForkCount: treeForkCount
          })
        : ((renderState.isBackwards = isBackwards),
          (renderState.rendering = null),
          (renderState.renderingStartTime = 0),
          (renderState.last = lastContentRow),
          (renderState.tail = tail),
          (renderState.tailMode = tailMode),
          (renderState.treeForkCount = treeForkCount));
    }
    function updateSuspenseListComponent(current, workInProgress, renderLanes) {
      var nextProps = workInProgress.pendingProps,
        revealOrder = nextProps.revealOrder,
        tailMode = nextProps.tail,
        newChildren = nextProps.children,
        suspenseContext = suspenseStackCursor.current;
      (nextProps = 0 !== (suspenseContext & ForceSuspenseFallback))
        ? ((suspenseContext =
            (suspenseContext & SubtreeSuspenseContextMask) |
            ForceSuspenseFallback),
          (workInProgress.flags |= 128))
        : (suspenseContext &= SubtreeSuspenseContextMask);
      push(suspenseStackCursor, suspenseContext, workInProgress);
      suspenseContext = null == revealOrder ? "null" : revealOrder;
      if (
        "forwards" !== revealOrder &&
        "unstable_legacy-backwards" !== revealOrder &&
        "together" !== revealOrder &&
        "independent" !== revealOrder &&
        !didWarnAboutRevealOrder[suspenseContext]
      )
        if (
          ((didWarnAboutRevealOrder[suspenseContext] = !0), null == revealOrder)
        )
          console.error(
            'The default for the <SuspenseList revealOrder="..."> prop is changing. To be future compatible you must explictly specify either "independent" (the current default), "together", "forwards" or "legacy_unstable-backwards".'
          );
        else if ("backwards" === revealOrder)
          console.error(
            'The rendering order of <SuspenseList revealOrder="backwards"> is changing. To be future compatible you must specify revealOrder="legacy_unstable-backwards" instead.'
          );
        else if ("string" === typeof revealOrder)
          switch (revealOrder.toLowerCase()) {
            case "together":
            case "forwards":
            case "backwards":
            case "independent":
              console.error(
                '"%s" is not a valid value for revealOrder on <SuspenseList />. Use lowercase "%s" instead.',
                revealOrder,
                revealOrder.toLowerCase()
              );
              break;
            case "forward":
            case "backward":
              console.error(
                '"%s" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use "%ss" instead.',
                revealOrder,
                revealOrder.toLowerCase()
              );
              break;
            default:
              console.error(
                '"%s" is not a supported revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?',
                revealOrder
              );
          }
        else
          console.error(
            '%s is not a supported value for revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?',
            revealOrder
          );
      suspenseContext = null == tailMode ? "null" : tailMode;
      if (!didWarnAboutTailOptions[suspenseContext])
        if (null == tailMode) {
          if (
            "forwards" === revealOrder ||
            "backwards" === revealOrder ||
            "unstable_legacy-backwards" === revealOrder
          )
            (didWarnAboutTailOptions[suspenseContext] = !0),
              console.error(
                'The default for the <SuspenseList tail="..."> prop is changing. To be future compatible you must explictly specify either "visible" (the current default), "collapsed" or "hidden".'
              );
        } else
          "visible" !== tailMode &&
          "collapsed" !== tailMode &&
          "hidden" !== tailMode
            ? ((didWarnAboutTailOptions[suspenseContext] = !0),
              console.error(
                '"%s" is not a supported value for tail on <SuspenseList />. Did you mean "visible", "collapsed" or "hidden"?',
                tailMode
              ))
            : "forwards" !== revealOrder &&
              "backwards" !== revealOrder &&
              "unstable_legacy-backwards" !== revealOrder &&
              ((didWarnAboutTailOptions[suspenseContext] = !0),
              console.error(
                '<SuspenseList tail="%s" /> is only valid if revealOrder is "forwards" or "backwards". Did you mean to specify revealOrder="forwards"?',
                tailMode
              ));
      a: if (
        ("forwards" === revealOrder ||
          "backwards" === revealOrder ||
          "unstable_legacy-backwards" === revealOrder) &&
        void 0 !== newChildren &&
        null !== newChildren &&
        !1 !== newChildren
      )
        if (isArrayImpl(newChildren))
          for (
            suspenseContext = 0;
            suspenseContext < newChildren.length;
            suspenseContext++
          ) {
            if (
              !validateSuspenseListNestedChild(
                newChildren[suspenseContext],
                suspenseContext
              )
            )
              break a;
          }
        else if (
          ((suspenseContext = getIteratorFn(newChildren)),
          "function" === typeof suspenseContext)
        ) {
          if ((suspenseContext = suspenseContext.call(newChildren)))
            for (
              var step = suspenseContext.next(), _i = 0;
              !step.done;
              step = suspenseContext.next()
            ) {
              if (!validateSuspenseListNestedChild(step.value, _i)) break a;
              _i++;
            }
        } else
          console.error(
            'A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?',
            revealOrder
          );
      reconcileChildren(current, workInProgress, newChildren, renderLanes);
      isHydrating
        ? (warnIfNotHydrating(), (newChildren = treeForkCount))
        : (newChildren = 0);
      if (!nextProps && null !== current && 0 !== (current.flags & 128))
        a: for (current = workInProgress.child; null !== current; ) {
          if (13 === current.tag)
            null !== current.memoizedState &&
              scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);
          else if (19 === current.tag)
            scheduleSuspenseWorkOnFiber(current, renderLanes, workInProgress);
          else if (null !== current.child) {
            current.child.return = current;
            current = current.child;
            continue;
          }
          if (current === workInProgress) break a;
          for (; null === current.sibling; ) {
            if (null === current.return || current.return === workInProgress)
              break a;
            current = current.return;
          }
          current.sibling.return = current.return;
          current = current.sibling;
        }
      switch (revealOrder) {
        case "forwards":
          renderLanes = workInProgress.child;
          for (revealOrder = null; null !== renderLanes; )
            (current = renderLanes.alternate),
              null !== current &&
                null === findFirstSuspended(current) &&
                (revealOrder = renderLanes),
              (renderLanes = renderLanes.sibling);
          renderLanes = revealOrder;
          null === renderLanes
            ? ((revealOrder = workInProgress.child),
              (workInProgress.child = null))
            : ((revealOrder = renderLanes.sibling),
              (renderLanes.sibling = null));
          initSuspenseListRenderState(
            workInProgress,
            !1,
            revealOrder,
            renderLanes,
            tailMode,
            newChildren
          );
          break;
        case "backwards":
        case "unstable_legacy-backwards":
          renderLanes = null;
          revealOrder = workInProgress.child;
          for (workInProgress.child = null; null !== revealOrder; ) {
            current = revealOrder.alternate;
            if (null !== current && null === findFirstSuspended(current)) {
              workInProgress.child = revealOrder;
              break;
            }
            current = revealOrder.sibling;
            revealOrder.sibling = renderLanes;
            renderLanes = revealOrder;
            revealOrder = current;
          }
          initSuspenseListRenderState(
            workInProgress,
            !0,
            renderLanes,
            null,
            tailMode,
            newChildren
          );
          break;
        case "together":
          initSuspenseListRenderState(
            workInProgress,
            !1,
            null,
            null,
            void 0,
            newChildren
          );
          break;
        default:
          workInProgress.memoizedState = null;
      }
      return workInProgress.child;
    }
    function bailoutOnAlreadyFinishedWork(
      current,
      workInProgress,
      renderLanes
    ) {
      null !== current && (workInProgress.dependencies = current.dependencies);
      profilerStartTime = -1;
      workInProgressRootSkippedLanes |= workInProgress.lanes;
      if (0 === (renderLanes & workInProgress.childLanes))
        if (null !== current) {
          if (
            (propagateParentContextChanges(
              current,
              workInProgress,
              renderLanes,
              !1
            ),
            0 === (renderLanes & workInProgress.childLanes))
          )
            return null;
        } else return null;
      if (null !== current && workInProgress.child !== current.child)
        throw Error("Resuming work not yet implemented.");
      if (null !== workInProgress.child) {
        current = workInProgress.child;
        renderLanes = createWorkInProgress(current, current.pendingProps);
        workInProgress.child = renderLanes;
        for (renderLanes.return = workInProgress; null !== current.sibling; )
          (current = current.sibling),
            (renderLanes = renderLanes.sibling =
              createWorkInProgress(current, current.pendingProps)),
            (renderLanes.return = workInProgress);
        renderLanes.sibling = null;
      }
      return workInProgress.child;
    }
    function checkScheduledUpdateOrContext(current, renderLanes) {
      if (0 !== (current.lanes & renderLanes)) return !0;
      current = current.dependencies;
      return null !== current && checkIfContextChanged(current) ? !0 : !1;
    }
    function attemptEarlyBailoutIfNoScheduledUpdate(
      current,
      workInProgress,
      renderLanes
    ) {
      switch (workInProgress.tag) {
        case 3:
          pushHostContainer(
            workInProgress,
            workInProgress.stateNode.containerInfo
          );
          pushProvider(
            workInProgress,
            CacheContext,
            current.memoizedState.cache
          );
          resetHydrationState();
          break;
        case 27:
        case 5:
          pushHostContext(workInProgress);
          break;
        case 4:
          pushHostContainer(
            workInProgress,
            workInProgress.stateNode.containerInfo
          );
          break;
        case 10:
          pushProvider(
            workInProgress,
            workInProgress.type,
            workInProgress.memoizedProps.value
          );
          break;
        case 12:
          0 !== (renderLanes & workInProgress.childLanes) &&
            (workInProgress.flags |= 4);
          workInProgress.flags |= 2048;
          var stateNode = workInProgress.stateNode;
          stateNode.effectDuration = -0;
          stateNode.passiveEffectDuration = -0;
          break;
        case 31:
          if (null !== workInProgress.memoizedState)
            return (
              (workInProgress.flags |= 128),
              pushDehydratedActivitySuspenseHandler(workInProgress),
              null
            );
          break;
        case 13:
          stateNode = workInProgress.memoizedState;
          if (null !== stateNode) {
            if (null !== stateNode.dehydrated)
              return (
                pushPrimaryTreeSuspenseHandler(workInProgress),
                (workInProgress.flags |= 128),
                null
              );
            if (0 !== (renderLanes & workInProgress.child.childLanes))
              return updateSuspenseComponent(
                current,
                workInProgress,
                renderLanes
              );
            pushPrimaryTreeSuspenseHandler(workInProgress);
            current = bailoutOnAlreadyFinishedWork(
              current,
              workInProgress,
              renderLanes
            );
            return null !== current ? current.sibling : null;
          }
          pushPrimaryTreeSuspenseHandler(workInProgress);
          break;
        case 19:
          var didSuspendBefore = 0 !== (current.flags & 128);
          stateNode = 0 !== (renderLanes & workInProgress.childLanes);
          stateNode ||
            (propagateParentContextChanges(
              current,
              workInProgress,
              renderLanes,
              !1
            ),
            (stateNode = 0 !== (renderLanes & workInProgress.childLanes)));
          if (didSuspendBefore) {
            if (stateNode)
              return updateSuspenseListComponent(
                current,
                workInProgress,
                renderLanes
              );
            workInProgress.flags |= 128;
          }
          didSuspendBefore = workInProgress.memoizedState;
          null !== didSuspendBefore &&
            ((didSuspendBefore.rendering = null),
            (didSuspendBefore.tail = null),
            (didSuspendBefore.lastEffect = null));
          push(
            suspenseStackCursor,
            suspenseStackCursor.current,
            workInProgress
          );
          if (stateNode) break;
          else return null;
        case 22:
          return (
            (workInProgress.lanes = 0),
            updateOffscreenComponent(
              current,
              workInProgress,
              renderLanes,
              workInProgress.pendingProps
            )
          );
        case 24:
          pushProvider(
            workInProgress,
            CacheContext,
            current.memoizedState.cache
          );
      }
      return bailoutOnAlreadyFinishedWork(current, workInProgress, renderLanes);
    }
    function beginWork(current, workInProgress, renderLanes) {
      if (workInProgress._debugNeedsRemount && null !== current) {
        renderLanes = createFiberFromTypeAndProps(
          workInProgress.type,
          workInProgress.key,
          workInProgress.pendingProps,
          workInProgress._debugOwner || null,
          workInProgress.mode,
          workInProgress.lanes
        );
        renderLanes._debugStack = workInProgress._debugStack;
        renderLanes._debugTask = workInProgress._debugTask;
        var returnFiber = workInProgress.return;
        if (null === returnFiber) throw Error("Cannot swap the root fiber.");
        current.alternate = null;
        workInProgress.alternate = null;
        renderLanes.index = workInProgress.index;
        renderLanes.sibling = workInProgress.sibling;
        renderLanes.return = workInProgress.return;
        renderLanes.ref = workInProgress.ref;
        renderLanes._debugInfo = workInProgress._debugInfo;
        if (workInProgress === returnFiber.child)
          returnFiber.child = renderLanes;
        else {
          var prevSibling = returnFiber.child;
          if (null === prevSibling)
            throw Error("Expected parent to have a child.");
          for (; prevSibling.sibling !== workInProgress; )
            if (((prevSibling = prevSibling.sibling), null === prevSibling))
              throw Error("Expected to find the previous sibling.");
          prevSibling.sibling = renderLanes;
        }
        workInProgress = returnFiber.deletions;
        null === workInProgress
          ? ((returnFiber.deletions = [current]), (returnFiber.flags |= 16))
          : workInProgress.push(current);
        renderLanes.flags |= 2;
        return renderLanes;
      }
      if (null !== current)
        if (
          current.memoizedProps !== workInProgress.pendingProps ||
          workInProgress.type !== current.type
        )
          didReceiveUpdate = !0;
        else {
          if (
            !checkScheduledUpdateOrContext(current, renderLanes) &&
            0 === (workInProgress.flags & 128)
          )
            return (
              (didReceiveUpdate = !1),
              attemptEarlyBailoutIfNoScheduledUpdate(
                current,
                workInProgress,
                renderLanes
              )
            );
          didReceiveUpdate = 0 !== (current.flags & 131072) ? !0 : !1;
        }
      else {
        didReceiveUpdate = !1;
        if ((returnFiber = isHydrating))
          warnIfNotHydrating(),
            (returnFiber = 0 !== (workInProgress.flags & 1048576));
        returnFiber &&
          ((returnFiber = workInProgress.index),
          warnIfNotHydrating(),
          pushTreeId(workInProgress, treeForkCount, returnFiber));
      }
      workInProgress.lanes = 0;
      switch (workInProgress.tag) {
        case 16:
          a: if (
            ((returnFiber = workInProgress.pendingProps),
            (current = resolveLazy(workInProgress.elementType)),
            (workInProgress.type = current),
            "function" === typeof current)
          )
            shouldConstruct(current)
              ? ((returnFiber = resolveClassComponentProps(
                  current,
                  returnFiber
                )),
                (workInProgress.tag = 1),
                (workInProgress.type = current =
                  resolveFunctionForHotReloading(current)),
                (workInProgress = updateClassComponent(
                  null,
                  workInProgress,
                  current,
                  returnFiber,
                  renderLanes
                )))
              : ((workInProgress.tag = 0),
                validateFunctionComponentInDev(workInProgress, current),
                (workInProgress.type = current =
                  resolveFunctionForHotReloading(current)),
                (workInProgress = updateFunctionComponent(
                  null,
                  workInProgress,
                  current,
                  returnFiber,
                  renderLanes
                )));
          else {
            if (void 0 !== current && null !== current)
              if (
                ((prevSibling = current.$$typeof),
                prevSibling === REACT_FORWARD_REF_TYPE)
              ) {
                workInProgress.tag = 11;
                workInProgress.type = current =
                  resolveForwardRefForHotReloading(current);
                workInProgress = updateForwardRef(
                  null,
                  workInProgress,
                  current,
                  returnFiber,
                  renderLanes
                );
                break a;
              } else if (prevSibling === REACT_MEMO_TYPE) {
                workInProgress.tag = 14;
                workInProgress = updateMemoComponent(
                  null,
                  workInProgress,
                  current,
                  returnFiber,
                  renderLanes
                );
                break a;
              }
            workInProgress = "";
            null !== current &&
              "object" === typeof current &&
              current.$$typeof === REACT_LAZY_TYPE &&
              (workInProgress =
                " Did you wrap a component in React.lazy() more than once?");
            renderLanes = getComponentNameFromType(current) || current;
            throw Error(
              "Element type is invalid. Received a promise that resolves to: " +
                renderLanes +
                ". Lazy element type must resolve to a class or function." +
                workInProgress
            );
          }
          return workInProgress;
        case 0:
          return updateFunctionComponent(
            current,
            workInProgress,
            workInProgress.type,
            workInProgress.pendingProps,
            renderLanes
          );
        case 1:
          return (
            (returnFiber = workInProgress.type),
            (prevSibling = resolveClassComponentProps(
              returnFiber,
              workInProgress.pendingProps
            )),
            updateClassComponent(
              current,
              workInProgress,
              returnFiber,
              prevSibling,
              renderLanes
            )
          );
        case 3:
          a: {
            pushHostContainer(
              workInProgress,
              workInProgress.stateNode.containerInfo
            );
            if (null === current)
              throw Error(
                "Should have a current fiber. This is a bug in React."
              );
            returnFiber = workInProgress.pendingProps;
            var prevState = workInProgress.memoizedState;
            prevSibling = prevState.element;
            cloneUpdateQueue(current, workInProgress);
            processUpdateQueue(workInProgress, returnFiber, null, renderLanes);
            var nextState = workInProgress.memoizedState;
            returnFiber = nextState.cache;
            pushProvider(workInProgress, CacheContext, returnFiber);
            returnFiber !== prevState.cache &&
              propagateContextChanges(
                workInProgress,
                [CacheContext],
                renderLanes,
                !0
              );
            suspendIfUpdateReadFromEntangledAsyncAction();
            returnFiber = nextState.element;
            if (prevState.isDehydrated)
              if (
                ((prevState = {
                  element: returnFiber,
                  isDehydrated: !1,
                  cache: nextState.cache
                }),
                (workInProgress.updateQueue.baseState = prevState),
                (workInProgress.memoizedState = prevState),
                workInProgress.flags & 256)
              ) {
                workInProgress = mountHostRootWithoutHydrating(
                  current,
                  workInProgress,
                  returnFiber,
                  renderLanes
                );
                break a;
              } else if (returnFiber !== prevSibling) {
                prevSibling = createCapturedValueAtFiber(
                  Error(
                    "This root received an early update, before anything was able hydrate. Switched the entire root to client rendering."
                  ),
                  workInProgress
                );
                queueHydrationError(prevSibling);
                workInProgress = mountHostRootWithoutHydrating(
                  current,
                  workInProgress,
                  returnFiber,
                  renderLanes
                );
                break a;
              } else {
                current = workInProgress.stateNode.containerInfo;
                switch (current.nodeType) {
                  case 9:
                    current = current.body;
                    break;
                  default:
                    current =
                      "HTML" === current.nodeName
                        ? current.ownerDocument.body
                        : current;
                }
                nextHydratableInstance = getNextHydratable(current.firstChild);
                hydrationParentFiber = workInProgress;
                isHydrating = !0;
                hydrationErrors = null;
                didSuspendOrErrorDEV = !1;
                hydrationDiffRootDEV = null;
                rootOrSingletonContext = !0;
                renderLanes = mountChildFibers(
                  workInProgress,
                  null,
                  returnFiber,
                  renderLanes
                );
                for (workInProgress.child = renderLanes; renderLanes; )
                  (renderLanes.flags = (renderLanes.flags & -3) | 4096),
                    (renderLanes = renderLanes.sibling);
              }
            else {
              resetHydrationState();
              if (returnFiber === prevSibling) {
                workInProgress = bailoutOnAlreadyFinishedWork(
                  current,
                  workInProgress,
                  renderLanes
                );
                break a;
              }
              reconcileChildren(
                current,
                workInProgress,
                returnFiber,
                renderLanes
              );
            }
            workInProgress = workInProgress.child;
          }
          return workInProgress;
        case 26:
          return (
            markRef(current, workInProgress),
            null === current
              ? (renderLanes = getResource(
                  workInProgress.type,
                  null,
                  workInProgress.pendingProps,
                  null
                ))
                ? (workInProgress.memoizedState = renderLanes)
                : isHydrating ||
                  ((renderLanes = workInProgress.type),
                  (current = workInProgress.pendingProps),
                  (returnFiber = requiredContext(
                    rootInstanceStackCursor.current
                  )),
                  (returnFiber =
                    getOwnerDocumentFromRootContainer(
                      returnFiber
                    ).createElement(renderLanes)),
                  (returnFiber[internalInstanceKey] = workInProgress),
                  (returnFiber[internalPropsKey] = current),
                  setInitialProperties(returnFiber, renderLanes, current),
                  markNodeAsHoistable(returnFiber),
                  (workInProgress.stateNode = returnFiber))
              : (workInProgress.memoizedState = getResource(
                  workInProgress.type,
                  current.memoizedProps,
                  workInProgress.pendingProps,
                  current.memoizedState
                )),
            null
          );
        case 27:
          return (
            pushHostContext(workInProgress),
            null === current &&
              isHydrating &&
              ((returnFiber = requiredContext(rootInstanceStackCursor.current)),
              (prevSibling = getHostContext()),
              (returnFiber = workInProgress.stateNode =
                resolveSingletonInstance(
                  workInProgress.type,
                  workInProgress.pendingProps,
                  returnFiber,
                  prevSibling,
                  !1
                )),
              didSuspendOrErrorDEV ||
                ((prevSibling = diffHydratedProperties(
                  returnFiber,
                  workInProgress.type,
                  workInProgress.pendingProps,
                  prevSibling
                )),
                null !== prevSibling &&
                  (buildHydrationDiffNode(workInProgress, 0).serverProps =
                    prevSibling)),
              (hydrationParentFiber = workInProgress),
              (rootOrSingletonContext = !0),
              (prevSibling = nextHydratableInstance),
              isSingletonScope(workInProgress.type)
                ? ((previousHydratableOnEnteringScopedSingleton = prevSibling),
                  (nextHydratableInstance = getNextHydratable(
                    returnFiber.firstChild
                  )))
                : (nextHydratableInstance = prevSibling)),
            reconcileChildren(
              current,
              workInProgress,
              workInProgress.pendingProps.children,
              renderLanes
            ),
            markRef(current, workInProgress),
            null === current && (workInProgress.flags |= 4194304),
            workInProgress.child
          );
        case 5:
          return (
            null === current &&
              isHydrating &&
              ((prevState = getHostContext()),
              (returnFiber = validateDOMNesting(
                workInProgress.type,
                prevState.ancestorInfo
              )),
              (prevSibling = nextHydratableInstance),
              (nextState = !prevSibling) ||
                ((nextState = canHydrateInstance(
                  prevSibling,
                  workInProgress.type,
                  workInProgress.pendingProps,
                  rootOrSingletonContext
                )),
                null !== nextState
                  ? ((workInProgress.stateNode = nextState),
                    didSuspendOrErrorDEV ||
                      ((prevState = diffHydratedProperties(
                        nextState,
                        workInProgress.type,
                        workInProgress.pendingProps,
                        prevState
                      )),
                      null !== prevState &&
                        (buildHydrationDiffNode(workInProgress, 0).serverProps =
                          prevState)),
                    (hydrationParentFiber = workInProgress),
                    (nextHydratableInstance = getNextHydratable(
                      nextState.firstChild
                    )),
                    (rootOrSingletonContext = !1),
                    (prevState = !0))
                  : (prevState = !1),
                (nextState = !prevState)),
              nextState &&
                (returnFiber &&
                  warnNonHydratedInstance(workInProgress, prevSibling),
                throwOnHydrationMismatch(workInProgress))),
            pushHostContext(workInProgress),
            (prevSibling = workInProgress.type),
            (prevState = workInProgress.pendingProps),
            (nextState = null !== current ? current.memoizedProps : null),
            (returnFiber = prevState.children),
            shouldSetTextContent(prevSibling, prevState)
              ? (returnFiber = null)
              : null !== nextState &&
                shouldSetTextContent(prevSibling, nextState) &&
                (workInProgress.flags |= 32),
            null !== workInProgress.memoizedState &&
              ((prevSibling = renderWithHooks(
                current,
                workInProgress,
                TransitionAwareHostComponent,
                null,
                null,
                renderLanes
              )),
              (HostTransitionContext._currentValue = prevSibling)),
            markRef(current, workInProgress),
            reconcileChildren(
              current,
              workInProgress,
              returnFiber,
              renderLanes
            ),
            workInProgress.child
          );
        case 6:
          return (
            null === current &&
              isHydrating &&
              ((renderLanes = workInProgress.pendingProps),
              (current = getHostContext()),
              (returnFiber = current.ancestorInfo.current),
              (renderLanes =
                null != returnFiber
                  ? validateTextNesting(
                      renderLanes,
                      returnFiber.tag,
                      current.ancestorInfo.implicitRootScope
                    )
                  : !0),
              (current = nextHydratableInstance),
              (returnFiber = !current) ||
                ((returnFiber = canHydrateTextInstance(
                  current,
                  workInProgress.pendingProps,
                  rootOrSingletonContext
                )),
                null !== returnFiber
                  ? ((workInProgress.stateNode = returnFiber),
                    (hydrationParentFiber = workInProgress),
                    (nextHydratableInstance = null),
                    (returnFiber = !0))
                  : (returnFiber = !1),
                (returnFiber = !returnFiber)),
              returnFiber &&
                (renderLanes &&
                  warnNonHydratedInstance(workInProgress, current),
                throwOnHydrationMismatch(workInProgress))),
            null
          );
        case 13:
          return updateSuspenseComponent(current, workInProgress, renderLanes);
        case 4:
          return (
            pushHostContainer(
              workInProgress,
              workInProgress.stateNode.containerInfo
            ),
            (returnFiber = workInProgress.pendingProps),
            null === current
              ? (workInProgress.child = reconcileChildFibers(
                  workInProgress,
                  null,
                  returnFiber,
                  renderLanes
                ))
              : reconcileChildren(
                  current,
                  workInProgress,
                  returnFiber,
                  renderLanes
                ),
            workInProgress.child
          );
        case 11:
          return updateForwardRef(
            current,
            workInProgress,
            workInProgress.type,
            workInProgress.pendingProps,
            renderLanes
          );
        case 7:
          return (
            reconcileChildren(
              current,
              workInProgress,
              workInProgress.pendingProps,
              renderLanes
            ),
            workInProgress.child
          );
        case 8:
          return (
            reconcileChildren(
              current,
              workInProgress,
              workInProgress.pendingProps.children,
              renderLanes
            ),
            workInProgress.child
          );
        case 12:
          return (
            (workInProgress.flags |= 4),
            (workInProgress.flags |= 2048),
            (returnFiber = workInProgress.stateNode),
            (returnFiber.effectDuration = -0),
            (returnFiber.passiveEffectDuration = -0),
            reconcileChildren(
              current,
              workInProgress,
              workInProgress.pendingProps.children,
              renderLanes
            ),
            workInProgress.child
          );
        case 10:
          return (
            (returnFiber = workInProgress.type),
            (prevSibling = workInProgress.pendingProps),
            (prevState = prevSibling.value),
            "value" in prevSibling ||
              hasWarnedAboutUsingNoValuePropOnContextProvider ||
              ((hasWarnedAboutUsingNoValuePropOnContextProvider = !0),
              console.error(
                "The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?"
              )),
            pushProvider(workInProgress, returnFiber, prevState),
            reconcileChildren(
              current,
              workInProgress,
              prevSibling.children,
              renderLanes
            ),
            workInProgress.child
          );
        case 9:
          return (
            (prevSibling = workInProgress.type._context),
            (returnFiber = workInProgress.pendingProps.children),
            "function" !== typeof returnFiber &&
              console.error(
                "A context consumer was rendered with multiple children, or a child that isn't a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it."
              ),
            prepareToReadContext(workInProgress),
            (prevSibling = readContext(prevSibling)),
            (returnFiber = callComponentInDEV(
              returnFiber,
              prevSibling,
              void 0
            )),
            (workInProgress.flags |= 1),
            reconcileChildren(
              current,
              workInProgress,
              returnFiber,
              renderLanes
            ),
            workInProgress.child
          );
        case 14:
          return updateMemoComponent(
            current,
            workInProgress,
            workInProgress.type,
            workInProgress.pendingProps,
            renderLanes
          );
        case 15:
          return updateSimpleMemoComponent(
            current,
            workInProgress,
            workInProgress.type,
            workInProgress.pendingProps,
            renderLanes
          );
        case 19:
          return updateSuspenseListComponent(
            current,
            workInProgress,
            renderLanes
          );
        case 31:
          return updateActivityComponent(current, workInProgress, renderLanes);
        case 22:
          return updateOffscreenComponent(
            current,
            workInProgress,
            renderLanes,
            workInProgress.pendingProps
          );
        case 24:
          return (
            prepareToReadContext(workInProgress),
            (returnFiber = readContext(CacheContext)),
            null === current
              ? ((prevSibling = peekCacheFromPool()),
                null === prevSibling &&
                  ((prevSibling = workInProgressRoot),
                  (prevState = createCache()),
                  (prevSibling.pooledCache = prevState),
                  retainCache(prevState),
                  null !== prevState &&
                    (prevSibling.pooledCacheLanes |= renderLanes),
                  (prevSibling = prevState)),
                (workInProgress.memoizedState = {
                  parent: returnFiber,
                  cache: prevSibling
                }),
                initializeUpdateQueue(workInProgress),
                pushProvider(workInProgress, CacheContext, prevSibling))
              : (0 !== (current.lanes & renderLanes) &&
                  (cloneUpdateQueue(current, workInProgress),
                  processUpdateQueue(workInProgress, null, null, renderLanes),
                  suspendIfUpdateReadFromEntangledAsyncAction()),
                (prevSibling = current.memoizedState),
                (prevState = workInProgress.memoizedState),
                prevSibling.parent !== returnFiber
                  ? ((prevSibling = {
                      parent: returnFiber,
                      cache: returnFiber
                    }),
                    (workInProgress.memoizedState = prevSibling),
                    0 === workInProgress.lanes &&
                      (workInProgress.memoizedState =
                        workInProgress.updateQueue.baseState =
                          prevSibling),
                    pushProvider(workInProgress, CacheContext, returnFiber))
                  : ((returnFiber = prevState.cache),
                    pushProvider(workInProgress, CacheContext, returnFiber),
                    returnFiber !== prevSibling.cache &&
                      propagateContextChanges(
                        workInProgress,
                        [CacheContext],
                        renderLanes,
                        !0
                      ))),
            reconcileChildren(
              current,
              workInProgress,
              workInProgress.pendingProps.children,
              renderLanes
            ),
            workInProgress.child
          );
        case 29:
          throw workInProgress.pendingProps;
      }
      throw Error(
        "Unknown unit of work tag (" +
          workInProgress.tag +
          "). This error is likely caused by a bug in React. Please file an issue."
      );
    }
    function markUpdate(workInProgress) {
      workInProgress.flags |= 4;
    }
    function preloadInstanceAndSuspendIfNeeded(
      workInProgress,
      type,
      oldProps,
      newProps,
      renderLanes
    ) {
      if ((type = (workInProgress.mode & SuspenseyImagesMode) !== NoMode))
        type = !1;
      if (type) {
        if (
          ((workInProgress.flags |= 16777216),
          (renderLanes & 335544128) === renderLanes)
        )
          if (workInProgress.stateNode.complete) workInProgress.flags |= 8192;
          else if (shouldRemainOnPreviousScreen()) workInProgress.flags |= 8192;
          else
            throw (
              ((suspendedThenable = noopSuspenseyCommitThenable),
              SuspenseyCommitException)
            );
      } else workInProgress.flags &= -16777217;
    }
    function preloadResourceAndSuspendIfNeeded(workInProgress, resource) {
      if (
        "stylesheet" !== resource.type ||
        (resource.state.loading & Inserted) !== NotLoaded
      )
        workInProgress.flags &= -16777217;
      else if (((workInProgress.flags |= 16777216), !preloadResource(resource)))
        if (shouldRemainOnPreviousScreen()) workInProgress.flags |= 8192;
        else
          throw (
            ((suspendedThenable = noopSuspenseyCommitThenable),
            SuspenseyCommitException)
          );
    }
    function scheduleRetryEffect(workInProgress, retryQueue) {
      null !== retryQueue && (workInProgress.flags |= 4);
      workInProgress.flags & 16384 &&
        ((retryQueue =
          22 !== workInProgress.tag ? claimNextRetryLane() : 536870912),
        (workInProgress.lanes |= retryQueue),
        (workInProgressSuspendedRetryLanes |= retryQueue));
    }
    function cutOffTailIfNeeded(renderState, hasRenderedATailFallback) {
      if (!isHydrating)
        switch (renderState.tailMode) {
          case "hidden":
            hasRenderedATailFallback = renderState.tail;
            for (var lastTailNode = null; null !== hasRenderedATailFallback; )
              null !== hasRenderedATailFallback.alternate &&
                (lastTailNode = hasRenderedATailFallback),
                (hasRenderedATailFallback = hasRenderedATailFallback.sibling);
            null === lastTailNode
              ? (renderState.tail = null)
              : (lastTailNode.sibling = null);
            break;
          case "collapsed":
            lastTailNode = renderState.tail;
            for (var _lastTailNode = null; null !== lastTailNode; )
              null !== lastTailNode.alternate && (_lastTailNode = lastTailNode),
                (lastTailNode = lastTailNode.sibling);
            null === _lastTailNode
              ? hasRenderedATailFallback || null === renderState.tail
                ? (renderState.tail = null)
                : (renderState.tail.sibling = null)
              : (_lastTailNode.sibling = null);
        }
    }
    function bubbleProperties(completedWork) {
      var didBailout =
          null !== completedWork.alternate &&
          completedWork.alternate.child === completedWork.child,
        newChildLanes = 0,
        subtreeFlags = 0;
      if (didBailout)
        if ((completedWork.mode & ProfileMode) !== NoMode) {
          for (
            var _treeBaseDuration = completedWork.selfBaseDuration,
              _child2 = completedWork.child;
            null !== _child2;

          )
            (newChildLanes |= _child2.lanes | _child2.childLanes),
              (subtreeFlags |= _child2.subtreeFlags & 65011712),
              (subtreeFlags |= _child2.flags & 65011712),
              (_treeBaseDuration += _child2.treeBaseDuration),
              (_child2 = _child2.sibling);
          completedWork.treeBaseDuration = _treeBaseDuration;
        } else
          for (
            _treeBaseDuration = completedWork.child;
            null !== _treeBaseDuration;

          )
            (newChildLanes |=
              _treeBaseDuration.lanes | _treeBaseDuration.childLanes),
              (subtreeFlags |= _treeBaseDuration.subtreeFlags & 65011712),
              (subtreeFlags |= _treeBaseDuration.flags & 65011712),
              (_treeBaseDuration.return = completedWork),
              (_treeBaseDuration = _treeBaseDuration.sibling);
      else if ((completedWork.mode & ProfileMode) !== NoMode) {
        _treeBaseDuration = completedWork.actualDuration;
        _child2 = completedWork.selfBaseDuration;
        for (var child = completedWork.child; null !== child; )
          (newChildLanes |= child.lanes | child.childLanes),
            (subtreeFlags |= child.subtreeFlags),
            (subtreeFlags |= child.flags),
            (_treeBaseDuration += child.actualDuration),
            (_child2 += child.treeBaseDuration),
            (child = child.sibling);
        completedWork.actualDuration = _treeBaseDuration;
        completedWork.treeBaseDuration = _child2;
      } else
        for (
          _treeBaseDuration = completedWork.child;
          null !== _treeBaseDuration;

        )
          (newChildLanes |=
            _treeBaseDuration.lanes | _treeBaseDuration.childLanes),
            (subtreeFlags |= _treeBaseDuration.subtreeFlags),
            (subtreeFlags |= _treeBaseDuration.flags),
            (_treeBaseDuration.return = completedWork),
            (_treeBaseDuration = _treeBaseDuration.sibling);
      completedWork.subtreeFlags |= subtreeFlags;
      completedWork.childLanes = newChildLanes;
      return didBailout;
    }
    function completeWork(current, workInProgress, renderLanes) {
      var newProps = workInProgress.pendingProps;
      popTreeContext(workInProgress);
      switch (workInProgress.tag) {
        case 16:
        case 15:
        case 0:
        case 11:
        case 7:
        case 8:
        case 12:
        case 9:
        case 14:
          return bubbleProperties(workInProgress), null;
        case 1:
          return bubbleProperties(workInProgress), null;
        case 3:
          renderLanes = workInProgress.stateNode;
          newProps = null;
          null !== current && (newProps = current.memoizedState.cache);
          workInProgress.memoizedState.cache !== newProps &&
            (workInProgress.flags |= 2048);
          popProvider(CacheContext, workInProgress);
          popHostContainer(workInProgress);
          renderLanes.pendingContext &&
            ((renderLanes.context = renderLanes.pendingContext),
            (renderLanes.pendingContext = null));
          if (null === current || null === current.child)
            popHydrationState(workInProgress)
              ? (emitPendingHydrationWarnings(), markUpdate(workInProgress))
              : null === current ||
                (current.memoizedState.isDehydrated &&
                  0 === (workInProgress.flags & 256)) ||
                ((workInProgress.flags |= 1024),
                upgradeHydrationErrorsToRecoverable());
          bubbleProperties(workInProgress);
          return null;
        case 26:
          var type = workInProgress.type,
            nextResource = workInProgress.memoizedState;
          null === current
            ? (markUpdate(workInProgress),
              null !== nextResource
                ? (bubbleProperties(workInProgress),
                  preloadResourceAndSuspendIfNeeded(
                    workInProgress,
                    nextResource
                  ))
                : (bubbleProperties(workInProgress),
                  preloadInstanceAndSuspendIfNeeded(
                    workInProgress,
                    type,
                    null,
                    newProps,
                    renderLanes
                  )))
            : nextResource
              ? nextResource !== current.memoizedState
                ? (markUpdate(workInProgress),
                  bubbleProperties(workInProgress),
                  preloadResourceAndSuspendIfNeeded(
                    workInProgress,
                    nextResource
                  ))
                : (bubbleProperties(workInProgress),
                  (workInProgress.flags &= -16777217))
              : ((current = current.memoizedProps),
                current !== newProps && markUpdate(workInProgress),
                bubbleProperties(workInProgress),
                preloadInstanceAndSuspendIfNeeded(
                  workInProgress,
                  type,
                  current,
                  newProps,
                  renderLanes
                ));
          return null;
        case 27:
          popHostContext(workInProgress);
          renderLanes = requiredContext(rootInstanceStackCursor.current);
          type = workInProgress.type;
          if (null !== current && null != workInProgress.stateNode)
            current.memoizedProps !== newProps && markUpdate(workInProgress);
          else {
            if (!newProps) {
              if (null === workInProgress.stateNode)
                throw Error(
                  "We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue."
                );
              bubbleProperties(workInProgress);
              return null;
            }
            current = getHostContext();
            popHydrationState(workInProgress)
              ? prepareToHydrateHostInstance(workInProgress, current)
              : ((current = resolveSingletonInstance(
                  type,
                  newProps,
                  renderLanes,
                  current,
                  !0
                )),
                (workInProgress.stateNode = current),
                markUpdate(workInProgress));
          }
          bubbleProperties(workInProgress);
          return null;
        case 5:
          popHostContext(workInProgress);
          type = workInProgress.type;
          if (null !== current && null != workInProgress.stateNode)
            current.memoizedProps !== newProps && markUpdate(workInProgress);
          else {
            if (!newProps) {
              if (null === workInProgress.stateNode)
                throw Error(
                  "We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue."
                );
              bubbleProperties(workInProgress);
              return null;
            }
            var _currentHostContext = getHostContext();
            if (popHydrationState(workInProgress))
              prepareToHydrateHostInstance(workInProgress, _currentHostContext);
            else {
              nextResource = requiredContext(rootInstanceStackCursor.current);
              validateDOMNesting(type, _currentHostContext.ancestorInfo);
              _currentHostContext = _currentHostContext.context;
              nextResource = getOwnerDocumentFromRootContainer(nextResource);
              switch (_currentHostContext) {
                case HostContextNamespaceSvg:
                  nextResource = nextResource.createElementNS(
                    SVG_NAMESPACE,
                    type
                  );
                  break;
                case HostContextNamespaceMath:
                  nextResource = nextResource.createElementNS(
                    MATH_NAMESPACE,
                    type
                  );
                  break;
                default:
                  switch (type) {
                    case "svg":
                      nextResource = nextResource.createElementNS(
                        SVG_NAMESPACE,
                        type
                      );
                      break;
                    case "math":
                      nextResource = nextResource.createElementNS(
                        MATH_NAMESPACE,
                        type
                      );
                      break;
                    case "script":
                      nextResource = nextResource.createElement("div");
                      nextResource.innerHTML = "<script>\x3c/script>";
                      nextResource = nextResource.removeChild(
                        nextResource.firstChild
                      );
                      break;
                    case "select":
                      nextResource =
                        "string" === typeof newProps.is
                          ? nextResource.createElement("select", {
                              is: newProps.is
                            })
                          : nextResource.createElement("select");
                      newProps.multiple
                        ? (nextResource.multiple = !0)
                        : newProps.size && (nextResource.size = newProps.size);
                      break;
                    default:
                      (nextResource =
                        "string" === typeof newProps.is
                          ? nextResource.createElement(type, {
                              is: newProps.is
                            })
                          : nextResource.createElement(type)),
                        -1 === type.indexOf("-") &&
                          (type !== type.toLowerCase() &&
                            console.error(
                              "<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.",
                              type
                            ),
                          "[object HTMLUnknownElement]" !==
                            Object.prototype.toString.call(nextResource) ||
                            hasOwnProperty.call(warnedUnknownTags, type) ||
                            ((warnedUnknownTags[type] = !0),
                            console.error(
                              "The tag <%s> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.",
                              type
                            )));
                  }
              }
              nextResource[internalInstanceKey] = workInProgress;
              nextResource[internalPropsKey] = newProps;
              a: for (
                _currentHostContext = workInProgress.child;
                null !== _currentHostContext;

              ) {
                if (
                  5 === _currentHostContext.tag ||
                  6 === _currentHostContext.tag
                )
                  nextResource.appendChild(_currentHostContext.stateNode);
                else if (
                  4 !== _currentHostContext.tag &&
                  27 !== _currentHostContext.tag &&
                  null !== _currentHostContext.child
                ) {
                  _currentHostContext.child.return = _currentHostContext;
                  _currentHostContext = _currentHostContext.child;
                  continue;
                }
                if (_currentHostContext === workInProgress) break a;
                for (; null === _currentHostContext.sibling; ) {
                  if (
                    null === _currentHostContext.return ||
                    _currentHostContext.return === workInProgress
                  )
                    break a;
                  _currentHostContext = _currentHostContext.return;
                }
                _currentHostContext.sibling.return = _currentHostContext.return;
                _currentHostContext = _currentHostContext.sibling;
              }
              workInProgress.stateNode = nextResource;
              a: switch (
                (setInitialProperties(nextResource, type, newProps), type)
              ) {
                case "button":
                case "input":
                case "select":
                case "textarea":
                  newProps = !!newProps.autoFocus;
                  break a;
                case "img":
                  newProps = !0;
                  break a;
                default:
                  newProps = !1;
              }
              newProps && markUpdate(workInProgress);
            }
          }
          bubbleProperties(workInProgress);
          preloadInstanceAndSuspendIfNeeded(
            workInProgress,
            workInProgress.type,
            null === current ? null : current.memoizedProps,
            workInProgress.pendingProps,
            renderLanes
          );
          return null;
        case 6:
          if (current && null != workInProgress.stateNode)
            current.memoizedProps !== newProps && markUpdate(workInProgress);
          else {
            if (
              "string" !== typeof newProps &&
              null === workInProgress.stateNode
            )
              throw Error(
                "We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue."
              );
            current = requiredContext(rootInstanceStackCursor.current);
            renderLanes = getHostContext();
            if (popHydrationState(workInProgress)) {
              current = workInProgress.stateNode;
              renderLanes = workInProgress.memoizedProps;
              type = !didSuspendOrErrorDEV;
              newProps = null;
              nextResource = hydrationParentFiber;
              if (null !== nextResource)
                switch (nextResource.tag) {
                  case 3:
                    type &&
                      ((type = diffHydratedTextForDevWarnings(
                        current,
                        renderLanes,
                        newProps
                      )),
                      null !== type &&
                        (buildHydrationDiffNode(workInProgress, 0).serverProps =
                          type));
                    break;
                  case 27:
                  case 5:
                    (newProps = nextResource.memoizedProps),
                      type &&
                        ((type = diffHydratedTextForDevWarnings(
                          current,
                          renderLanes,
                          newProps
                        )),
                        null !== type &&
                          (buildHydrationDiffNode(
                            workInProgress,
                            0
                          ).serverProps = type));
                }
              current[internalInstanceKey] = workInProgress;
              current =
                current.nodeValue === renderLanes ||
                (null !== newProps &&
                  !0 === newProps.suppressHydrationWarning) ||
                checkForUnmatchedText(current.nodeValue, renderLanes)
                  ? !0
                  : !1;
              current || throwOnHydrationMismatch(workInProgress, !0);
            } else
              (type = renderLanes.ancestorInfo.current),
                null != type &&
                  validateTextNesting(
                    newProps,
                    type.tag,
                    renderLanes.ancestorInfo.implicitRootScope
                  ),
                (current =
                  getOwnerDocumentFromRootContainer(current).createTextNode(
                    newProps
                  )),
                (current[internalInstanceKey] = workInProgress),
                (workInProgress.stateNode = current);
          }
          bubbleProperties(workInProgress);
          return null;
        case 31:
          renderLanes = workInProgress.memoizedState;
          if (null === current || null !== current.memoizedState) {
            newProps = popHydrationState(workInProgress);
            if (null !== renderLanes) {
              if (null === current) {
                if (!newProps)
                  throw Error(
                    "A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React."
                  );
                current = workInProgress.memoizedState;
                current = null !== current ? current.dehydrated : null;
                if (!current)
                  throw Error(
                    "Expected to have a hydrated activity instance. This error is likely caused by a bug in React. Please file an issue."
                  );
                current[internalInstanceKey] = workInProgress;
                bubbleProperties(workInProgress);
                (workInProgress.mode & ProfileMode) !== NoMode &&
                  null !== renderLanes &&
                  ((current = workInProgress.child),
                  null !== current &&
                    (workInProgress.treeBaseDuration -=
                      current.treeBaseDuration));
              } else
                emitPendingHydrationWarnings(),
                  resetHydrationState(),
                  0 === (workInProgress.flags & 128) &&
                    (renderLanes = workInProgress.memoizedState = null),
                  (workInProgress.flags |= 4),
                  bubbleProperties(workInProgress),
                  (workInProgress.mode & ProfileMode) !== NoMode &&
                    null !== renderLanes &&
                    ((current = workInProgress.child),
                    null !== current &&
                      (workInProgress.treeBaseDuration -=
                        current.treeBaseDuration));
              current = !1;
            } else
              (renderLanes = upgradeHydrationErrorsToRecoverable()),
                null !== current &&
                  null !== current.memoizedState &&
                  (current.memoizedState.hydrationErrors = renderLanes),
                (current = !0);
            if (!current) {
              if (workInProgress.flags & 256)
                return popSuspenseHandler(workInProgress), workInProgress;
              popSuspenseHandler(workInProgress);
              return null;
            }
            if (0 !== (workInProgress.flags & 128))
              throw Error(
                "Client rendering an Activity suspended it again. This is a bug in React."
              );
          }
          bubbleProperties(workInProgress);
          return null;
        case 13:
          newProps = workInProgress.memoizedState;
          if (
            null === current ||
            (null !== current.memoizedState &&
              null !== current.memoizedState.dehydrated)
          ) {
            type = newProps;
            nextResource = popHydrationState(workInProgress);
            if (null !== type && null !== type.dehydrated) {
              if (null === current) {
                if (!nextResource)
                  throw Error(
                    "A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React."
                  );
                nextResource = workInProgress.memoizedState;
                nextResource =
                  null !== nextResource ? nextResource.dehydrated : null;
                if (!nextResource)
                  throw Error(
                    "Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue."
                  );
                nextResource[internalInstanceKey] = workInProgress;
                bubbleProperties(workInProgress);
                (workInProgress.mode & ProfileMode) !== NoMode &&
                  null !== type &&
                  ((type = workInProgress.child),
                  null !== type &&
                    (workInProgress.treeBaseDuration -= type.treeBaseDuration));
              } else
                emitPendingHydrationWarnings(),
                  resetHydrationState(),
                  0 === (workInProgress.flags & 128) &&
                    (type = workInProgress.memoizedState = null),
                  (workInProgress.flags |= 4),
                  bubbleProperties(workInProgress),
                  (workInProgress.mode & ProfileMode) !== NoMode &&
                    null !== type &&
                    ((type = workInProgress.child),
                    null !== type &&
                      (workInProgress.treeBaseDuration -=
                        type.treeBaseDuration));
              type = !1;
            } else
              (type = upgradeHydrationErrorsToRecoverable()),
                null !== current &&
                  null !== current.memoizedState &&
                  (current.memoizedState.hydrationErrors = type),
                (type = !0);
            if (!type) {
              if (workInProgress.flags & 256)
                return popSuspenseHandler(workInProgress), workInProgress;
              popSuspenseHandler(workInProgress);
              return null;
            }
          }
          popSuspenseHandler(workInProgress);
          if (0 !== (workInProgress.flags & 128))
            return (
              (workInProgress.lanes = renderLanes),
              (workInProgress.mode & ProfileMode) !== NoMode &&
                transferActualDuration(workInProgress),
              workInProgress
            );
          renderLanes = null !== newProps;
          current = null !== current && null !== current.memoizedState;
          renderLanes &&
            ((newProps = workInProgress.child),
            (type = null),
            null !== newProps.alternate &&
              null !== newProps.alternate.memoizedState &&
              null !== newProps.alternate.memoizedState.cachePool &&
              (type = newProps.alternate.memoizedState.cachePool.pool),
            (nextResource = null),
            null !== newProps.memoizedState &&
              null !== newProps.memoizedState.cachePool &&
              (nextResource = newProps.memoizedState.cachePool.pool),
            nextResource !== type && (newProps.flags |= 2048));
          renderLanes !== current &&
            renderLanes &&
            (workInProgress.child.flags |= 8192);
          scheduleRetryEffect(workInProgress, workInProgress.updateQueue);
          bubbleProperties(workInProgress);
          (workInProgress.mode & ProfileMode) !== NoMode &&
            renderLanes &&
            ((current = workInProgress.child),
            null !== current &&
              (workInProgress.treeBaseDuration -= current.treeBaseDuration));
          return null;
        case 4:
          return (
            popHostContainer(workInProgress),
            null === current &&
              listenToAllSupportedEvents(
                workInProgress.stateNode.containerInfo
              ),
            bubbleProperties(workInProgress),
            null
          );
        case 10:
          return (
            popProvider(workInProgress.type, workInProgress),
            bubbleProperties(workInProgress),
            null
          );
        case 19:
          pop(suspenseStackCursor, workInProgress);
          newProps = workInProgress.memoizedState;
          if (null === newProps) return bubbleProperties(workInProgress), null;
          type = 0 !== (workInProgress.flags & 128);
          nextResource = newProps.rendering;
          if (null === nextResource)
            if (type) cutOffTailIfNeeded(newProps, !1);
            else {
              if (
                workInProgressRootExitStatus !== RootInProgress ||
                (null !== current && 0 !== (current.flags & 128))
              )
                for (current = workInProgress.child; null !== current; ) {
                  nextResource = findFirstSuspended(current);
                  if (null !== nextResource) {
                    workInProgress.flags |= 128;
                    cutOffTailIfNeeded(newProps, !1);
                    current = nextResource.updateQueue;
                    workInProgress.updateQueue = current;
                    scheduleRetryEffect(workInProgress, current);
                    workInProgress.subtreeFlags = 0;
                    current = renderLanes;
                    for (
                      renderLanes = workInProgress.child;
                      null !== renderLanes;

                    )
                      resetWorkInProgress(renderLanes, current),
                        (renderLanes = renderLanes.sibling);
                    push(
                      suspenseStackCursor,
                      (suspenseStackCursor.current &
                        SubtreeSuspenseContextMask) |
                        ForceSuspenseFallback,
                      workInProgress
                    );
                    isHydrating &&
                      pushTreeFork(workInProgress, newProps.treeForkCount);
                    return workInProgress.child;
                  }
                  current = current.sibling;
                }
              null !== newProps.tail &&
                now$1() > workInProgressRootRenderTargetTime &&
                ((workInProgress.flags |= 128),
                (type = !0),
                cutOffTailIfNeeded(newProps, !1),
                (workInProgress.lanes = 4194304));
            }
          else {
            if (!type)
              if (
                ((current = findFirstSuspended(nextResource)), null !== current)
              ) {
                if (
                  ((workInProgress.flags |= 128),
                  (type = !0),
                  (current = current.updateQueue),
                  (workInProgress.updateQueue = current),
                  scheduleRetryEffect(workInProgress, current),
                  cutOffTailIfNeeded(newProps, !0),
                  null === newProps.tail &&
                    "hidden" === newProps.tailMode &&
                    !nextResource.alternate &&
                    !isHydrating)
                )
                  return bubbleProperties(workInProgress), null;
              } else
                2 * now$1() - newProps.renderingStartTime >
                  workInProgressRootRenderTargetTime &&
                  536870912 !== renderLanes &&
                  ((workInProgress.flags |= 128),
                  (type = !0),
                  cutOffTailIfNeeded(newProps, !1),
                  (workInProgress.lanes = 4194304));
            newProps.isBackwards
              ? ((nextResource.sibling = workInProgress.child),
                (workInProgress.child = nextResource))
              : ((current = newProps.last),
                null !== current
                  ? (current.sibling = nextResource)
                  : (workInProgress.child = nextResource),
                (newProps.last = nextResource));
          }
          if (null !== newProps.tail)
            return (
              (current = newProps.tail),
              (newProps.rendering = current),
              (newProps.tail = current.sibling),
              (newProps.renderingStartTime = now$1()),
              (current.sibling = null),
              (renderLanes = suspenseStackCursor.current),
              (renderLanes = type
                ? (renderLanes & SubtreeSuspenseContextMask) |
                  ForceSuspenseFallback
                : renderLanes & SubtreeSuspenseContextMask),
              push(suspenseStackCursor, renderLanes, workInProgress),
              isHydrating &&
                pushTreeFork(workInProgress, newProps.treeForkCount),
              current
            );
          bubbleProperties(workInProgress);
          return null;
        case 22:
        case 23:
          return (
            popSuspenseHandler(workInProgress),
            popHiddenContext(workInProgress),
            (newProps = null !== workInProgress.memoizedState),
            null !== current
              ? (null !== current.memoizedState) !== newProps &&
                (workInProgress.flags |= 8192)
              : newProps && (workInProgress.flags |= 8192),
            newProps
              ? 0 !== (renderLanes & 536870912) &&
                0 === (workInProgress.flags & 128) &&
                (bubbleProperties(workInProgress),
                workInProgress.subtreeFlags & 6 &&
                  (workInProgress.flags |= 8192))
              : bubbleProperties(workInProgress),
            (renderLanes = workInProgress.updateQueue),
            null !== renderLanes &&
              scheduleRetryEffect(workInProgress, renderLanes.retryQueue),
            (renderLanes = null),
            null !== current &&
              null !== current.memoizedState &&
              null !== current.memoizedState.cachePool &&
              (renderLanes = current.memoizedState.cachePool.pool),
            (newProps = null),
            null !== workInProgress.memoizedState &&
              null !== workInProgress.memoizedState.cachePool &&
              (newProps = workInProgress.memoizedState.cachePool.pool),
            newProps !== renderLanes && (workInProgress.flags |= 2048),
            null !== current && pop(resumedCache, workInProgress),
            null
          );
        case 24:
          return (
            (renderLanes = null),
            null !== current && (renderLanes = current.memoizedState.cache),
            workInProgress.memoizedState.cache !== renderLanes &&
              (workInProgress.flags |= 2048),
            popProvider(CacheContext, workInProgress),
            bubbleProperties(workInProgress),
            null
          );
        case 25:
          return null;
        case 30:
          return null;
      }
      throw Error(
        "Unknown unit of work tag (" +
          workInProgress.tag +
          "). This error is likely caused by a bug in React. Please file an issue."
      );
    }
    function unwindWork(current, workInProgress) {
      popTreeContext(workInProgress);
      switch (workInProgress.tag) {
        case 1:
          return (
            (current = workInProgress.flags),
            current & 65536
              ? ((workInProgress.flags = (current & -65537) | 128),
                (workInProgress.mode & ProfileMode) !== NoMode &&
                  transferActualDuration(workInProgress),
                workInProgress)
              : null
          );
        case 3:
          return (
            popProvider(CacheContext, workInProgress),
            popHostContainer(workInProgress),
            (current = workInProgress.flags),
            0 !== (current & 65536) && 0 === (current & 128)
              ? ((workInProgress.flags = (current & -65537) | 128),
                workInProgress)
              : null
          );
        case 26:
        case 27:
        case 5:
          return popHostContext(workInProgress), null;
        case 31:
          if (null !== workInProgress.memoizedState) {
            popSuspenseHandler(workInProgress);
            if (null === workInProgress.alternate)
              throw Error(
                "Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue."
              );
            resetHydrationState();
          }
          current = workInProgress.flags;
          return current & 65536
            ? ((workInProgress.flags = (current & -65537) | 128),
              (workInProgress.mode & ProfileMode) !== NoMode &&
                transferActualDuration(workInProgress),
              workInProgress)
            : null;
        case 13:
          popSuspenseHandler(workInProgress);
          current = workInProgress.memoizedState;
          if (null !== current && null !== current.dehydrated) {
            if (null === workInProgress.alternate)
              throw Error(
                "Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue."
              );
            resetHydrationState();
          }
          current = workInProgress.flags;
          return current & 65536
            ? ((workInProgress.flags = (current & -65537) | 128),
              (workInProgress.mode & ProfileMode) !== NoMode &&
                transferActualDuration(workInProgress),
              workInProgress)
            : null;
        case 19:
          return pop(suspenseStackCursor, workInProgress), null;
        case 4:
          return popHostContainer(workInProgress), null;
        case 10:
          return popProvider(workInProgress.type, workInProgress), null;
        case 22:
        case 23:
          return (
            popSuspenseHandler(workInProgress),
            popHiddenContext(workInProgress),
            null !== current && pop(resumedCache, workInProgress),
            (current = workInProgress.flags),
            current & 65536
              ? ((workInProgress.flags = (current & -65537) | 128),
                (workInProgress.mode & ProfileMode) !== NoMode &&
                  transferActualDuration(workInProgress),
                workInProgress)
              : null
          );
        case 24:
          return popProvider(CacheContext, workInProgress), null;
        case 25:
          return null;
        default:
          return null;
      }
    }
    function unwindInterruptedWork(current, interruptedWork) {
      popTreeContext(interruptedWork);
      switch (interruptedWork.tag) {
        case 3:
          popProvider(CacheContext, interruptedWork);
          popHostContainer(interruptedWork);
          break;
        case 26:
        case 27:
        case 5:
          popHostContext(interruptedWork);
          break;
        case 4:
          popHostContainer(interruptedWork);
          break;
        case 31:
          null !== interruptedWork.memoizedState &&
            popSuspenseHandler(interruptedWork);
          break;
        case 13:
          popSuspenseHandler(interruptedWork);
          break;
        case 19:
          pop(suspenseStackCursor, interruptedWork);
          break;
        case 10:
          popProvider(interruptedWork.type, interruptedWork);
          break;
        case 22:
        case 23:
          popSuspenseHandler(interruptedWork);
          popHiddenContext(interruptedWork);
          null !== current && pop(resumedCache, interruptedWork);
          break;
        case 24:
          popProvider(CacheContext, interruptedWork);
      }
    }
    function shouldProfile(current) {
      return (current.mode & ProfileMode) !== NoMode;
    }
    function commitHookLayoutEffects(finishedWork, hookFlags) {
      shouldProfile(finishedWork)
        ? (startEffectTimer(),
          commitHookEffectListMount(hookFlags, finishedWork),
          recordEffectDuration())
        : commitHookEffectListMount(hookFlags, finishedWork);
    }
    function commitHookLayoutUnmountEffects(
      finishedWork,
      nearestMountedAncestor,
      hookFlags
    ) {
      shouldProfile(finishedWork)
        ? (startEffectTimer(),
          commitHookEffectListUnmount(
            hookFlags,
            finishedWork,
            nearestMountedAncestor
          ),
          recordEffectDuration())
        : commitHookEffectListUnmount(
            hookFlags,
            finishedWork,
            nearestMountedAncestor
          );
    }
    function commitHookEffectListMount(flags, finishedWork) {
      try {
        var updateQueue = finishedWork.updateQueue,
          lastEffect = null !== updateQueue ? updateQueue.lastEffect : null;
        if (null !== lastEffect) {
          var firstEffect = lastEffect.next;
          updateQueue = firstEffect;
          do {
            if (
              (updateQueue.tag & flags) === flags &&
              ((lastEffect = void 0),
              (flags & Insertion) !== NoFlags &&
                (isRunningInsertionEffect = !0),
              (lastEffect = runWithFiberInDEV(
                finishedWork,
                callCreateInDEV,
                updateQueue
              )),
              (flags & Insertion) !== NoFlags &&
                (isRunningInsertionEffect = !1),
              void 0 !== lastEffect && "function" !== typeof lastEffect)
            ) {
              var hookName = void 0;
              hookName =
                0 !== (updateQueue.tag & Layout)
                  ? "useLayoutEffect"
                  : 0 !== (updateQueue.tag & Insertion)
                    ? "useInsertionEffect"
                    : "useEffect";
              var addendum = void 0;
              addendum =
                null === lastEffect
                  ? " You returned null. If your effect does not require clean up, return undefined (or nothing)."
                  : "function" === typeof lastEffect.then
                    ? "\n\nIt looks like you wrote " +
                      hookName +
                      "(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:\n\n" +
                      hookName +
                      "(() => {\n  async function fetchData() {\n    // You can await here\n    const response = await MyAPI.getData(someId);\n    // ...\n  }\n  fetchData();\n}, [someId]); // Or [] if effect doesn't need props or state\n\nLearn more about data fetching with Hooks: https://react.dev/link/hooks-data-fetching"
                    : " You returned: " + lastEffect;
              runWithFiberInDEV(
                finishedWork,
                function (n, a) {
                  console.error(
                    "%s must not return anything besides a function, which is used for clean-up.%s",
                    n,
                    a
                  );
                },
                hookName,
                addendum
              );
            }
            updateQueue = updateQueue.next;
          } while (updateQueue !== firstEffect);
        }
      } catch (error) {
        captureCommitPhaseError(finishedWork, finishedWork.return, error);
      }
    }
    function commitHookEffectListUnmount(
      flags,
      finishedWork,
      nearestMountedAncestor
    ) {
      try {
        var updateQueue = finishedWork.updateQueue,
          lastEffect = null !== updateQueue ? updateQueue.lastEffect : null;
        if (null !== lastEffect) {
          var firstEffect = lastEffect.next;
          updateQueue = firstEffect;
          do {
            if ((updateQueue.tag & flags) === flags) {
              var inst = updateQueue.inst,
                destroy = inst.destroy;
              void 0 !== destroy &&
                ((inst.destroy = void 0),
                (flags & Insertion) !== NoFlags &&
                  (isRunningInsertionEffect = !0),
                (lastEffect = finishedWork),
                runWithFiberInDEV(
                  lastEffect,
                  callDestroyInDEV,
                  lastEffect,
                  nearestMountedAncestor,
                  destroy
                ),
                (flags & Insertion) !== NoFlags &&
                  (isRunningInsertionEffect = !1));
            }
            updateQueue = updateQueue.next;
          } while (updateQueue !== firstEffect);
        }
      } catch (error) {
        captureCommitPhaseError(finishedWork, finishedWork.return, error);
      }
    }
    function commitHookPassiveMountEffects(finishedWork, hookFlags) {
      shouldProfile(finishedWork)
        ? (startEffectTimer(),
          commitHookEffectListMount(hookFlags, finishedWork),
          recordEffectDuration())
        : commitHookEffectListMount(hookFlags, finishedWork);
    }
    function commitHookPassiveUnmountEffects(
      finishedWork,
      nearestMountedAncestor,
      hookFlags
    ) {
      shouldProfile(finishedWork)
        ? (startEffectTimer(),
          commitHookEffectListUnmount(
            hookFlags,
            finishedWork,
            nearestMountedAncestor
          ),
          recordEffectDuration())
        : commitHookEffectListUnmount(
            hookFlags,
            finishedWork,
            nearestMountedAncestor
          );
    }
    function commitClassCallbacks(finishedWork) {
      var updateQueue = finishedWork.updateQueue;
      if (null !== updateQueue) {
        var instance = finishedWork.stateNode;
        finishedWork.type.defaultProps ||
          "ref" in finishedWork.memoizedProps ||
          didWarnAboutReassigningProps ||
          (instance.props !== finishedWork.memoizedProps &&
            console.error(
              "Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
              getComponentNameFromFiber(finishedWork) || "instance"
            ),
          instance.state !== finishedWork.memoizedState &&
            console.error(
              "Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
              getComponentNameFromFiber(finishedWork) || "instance"
            ));
        try {
          runWithFiberInDEV(
            finishedWork,
            commitCallbacks,
            updateQueue,
            instance
          );
        } catch (error) {
          captureCommitPhaseError(finishedWork, finishedWork.return, error);
        }
      }
    }
    function callGetSnapshotBeforeUpdates(instance, prevProps, prevState) {
      return instance.getSnapshotBeforeUpdate(prevProps, prevState);
    }
    function commitClassSnapshot(finishedWork, current) {
      var prevProps = current.memoizedProps,
        prevState = current.memoizedState;
      current = finishedWork.stateNode;
      finishedWork.type.defaultProps ||
        "ref" in finishedWork.memoizedProps ||
        didWarnAboutReassigningProps ||
        (current.props !== finishedWork.memoizedProps &&
          console.error(
            "Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
            getComponentNameFromFiber(finishedWork) || "instance"
          ),
        current.state !== finishedWork.memoizedState &&
          console.error(
            "Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
            getComponentNameFromFiber(finishedWork) || "instance"
          ));
      try {
        var resolvedPrevProps = resolveClassComponentProps(
          finishedWork.type,
          prevProps
        );
        var snapshot = runWithFiberInDEV(
          finishedWork,
          callGetSnapshotBeforeUpdates,
          current,
          resolvedPrevProps,
          prevState
        );
        prevProps = didWarnAboutUndefinedSnapshotBeforeUpdate;
        void 0 !== snapshot ||
          prevProps.has(finishedWork.type) ||
          (prevProps.add(finishedWork.type),
          runWithFiberInDEV(finishedWork, function () {
            console.error(
              "%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.",
              getComponentNameFromFiber(finishedWork)
            );
          }));
        current.__reactInternalSnapshotBeforeUpdate = snapshot;
      } catch (error) {
        captureCommitPhaseError(finishedWork, finishedWork.return, error);
      }
    }
    function safelyCallComponentWillUnmount(
      current,
      nearestMountedAncestor,
      instance
    ) {
      instance.props = resolveClassComponentProps(
        current.type,
        current.memoizedProps
      );
      instance.state = current.memoizedState;
      shouldProfile(current)
        ? (startEffectTimer(),
          runWithFiberInDEV(
            current,
            callComponentWillUnmountInDEV,
            current,
            nearestMountedAncestor,
            instance
          ),
          recordEffectDuration())
        : runWithFiberInDEV(
            current,
            callComponentWillUnmountInDEV,
            current,
            nearestMountedAncestor,
            instance
          );
    }
    function commitAttachRef(finishedWork) {
      var ref = finishedWork.ref;
      if (null !== ref) {
        switch (finishedWork.tag) {
          case 26:
          case 27:
          case 5:
            var instanceToUse = finishedWork.stateNode;
            break;
          case 30:
            instanceToUse = finishedWork.stateNode;
            break;
          default:
            instanceToUse = finishedWork.stateNode;
        }
        if ("function" === typeof ref)
          if (shouldProfile(finishedWork))
            try {
              startEffectTimer(),
                (finishedWork.refCleanup = ref(instanceToUse));
            } finally {
              recordEffectDuration();
            }
          else finishedWork.refCleanup = ref(instanceToUse);
        else
          "string" === typeof ref
            ? console.error("String refs are no longer supported.")
            : ref.hasOwnProperty("current") ||
              console.error(
                "Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().",
                getComponentNameFromFiber(finishedWork)
              ),
            (ref.current = instanceToUse);
      }
    }
    function safelyAttachRef(current, nearestMountedAncestor) {
      try {
        runWithFiberInDEV(current, commitAttachRef, current);
      } catch (error) {
        captureCommitPhaseError(current, nearestMountedAncestor, error);
      }
    }
    function safelyDetachRef(current, nearestMountedAncestor) {
      var ref = current.ref,
        refCleanup = current.refCleanup;
      if (null !== ref)
        if ("function" === typeof refCleanup)
          try {
            if (shouldProfile(current))
              try {
                startEffectTimer(), runWithFiberInDEV(current, refCleanup);
              } finally {
                recordEffectDuration(current);
              }
            else runWithFiberInDEV(current, refCleanup);
          } catch (error) {
            captureCommitPhaseError(current, nearestMountedAncestor, error);
          } finally {
            (current.refCleanup = null),
              (current = current.alternate),
              null != current && (current.refCleanup = null);
          }
        else if ("function" === typeof ref)
          try {
            if (shouldProfile(current))
              try {
                startEffectTimer(), runWithFiberInDEV(current, ref, null);
              } finally {
                recordEffectDuration(current);
              }
            else runWithFiberInDEV(current, ref, null);
          } catch (error$7) {
            captureCommitPhaseError(current, nearestMountedAncestor, error$7);
          }
        else ref.current = null;
    }
    function commitProfiler(
      finishedWork,
      current,
      commitStartTime,
      effectDuration
    ) {
      var _finishedWork$memoize = finishedWork.memoizedProps,
        id = _finishedWork$memoize.id,
        onCommit = _finishedWork$memoize.onCommit;
      _finishedWork$memoize = _finishedWork$memoize.onRender;
      current = null === current ? "mount" : "update";
      currentUpdateIsNested && (current = "nested-update");
      "function" === typeof _finishedWork$memoize &&
        _finishedWork$memoize(
          id,
          current,
          finishedWork.actualDuration,
          finishedWork.treeBaseDuration,
          finishedWork.actualStartTime,
          commitStartTime
        );
      "function" === typeof onCommit &&
        onCommit(id, current, effectDuration, commitStartTime);
    }
    function commitProfilerPostCommitImpl(
      finishedWork,
      current,
      commitStartTime,
      passiveEffectDuration
    ) {
      var _finishedWork$memoize2 = finishedWork.memoizedProps;
      finishedWork = _finishedWork$memoize2.id;
      _finishedWork$memoize2 = _finishedWork$memoize2.onPostCommit;
      current = null === current ? "mount" : "update";
      currentUpdateIsNested && (current = "nested-update");
      "function" === typeof _finishedWork$memoize2 &&
        _finishedWork$memoize2(
          finishedWork,
          current,
          passiveEffectDuration,
          commitStartTime
        );
    }
    function commitHostMount(finishedWork) {
      var type = finishedWork.type,
        props = finishedWork.memoizedProps,
        instance = finishedWork.stateNode;
      try {
        runWithFiberInDEV(
          finishedWork,
          commitMount,
          instance,
          type,
          props,
          finishedWork
        );
      } catch (error) {
        captureCommitPhaseError(finishedWork, finishedWork.return, error);
      }
    }
    function commitHostUpdate(finishedWork, newProps, oldProps) {
      try {
        runWithFiberInDEV(
          finishedWork,
          commitUpdate,
          finishedWork.stateNode,
          finishedWork.type,
          oldProps,
          newProps,
          finishedWork
        );
      } catch (error) {
        captureCommitPhaseError(finishedWork, finishedWork.return, error);
      }
    }
    function isHostParent(fiber) {
      return (
        5 === fiber.tag ||
        3 === fiber.tag ||
        26 === fiber.tag ||
        (27 === fiber.tag && isSingletonScope(fiber.type)) ||
        4 === fiber.tag
      );
    }
    function getHostSibling(fiber) {
      a: for (;;) {
        for (; null === fiber.sibling; ) {
          if (null === fiber.return || isHostParent(fiber.return)) return null;
          fiber = fiber.return;
        }
        fiber.sibling.return = fiber.return;
        for (
          fiber = fiber.sibling;
          5 !== fiber.tag && 6 !== fiber.tag && 18 !== fiber.tag;

        ) {
          if (27 === fiber.tag && isSingletonScope(fiber.type)) continue a;
          if (fiber.flags & 2) continue a;
          if (null === fiber.child || 4 === fiber.tag) continue a;
          else (fiber.child.return = fiber), (fiber = fiber.child);
        }
        if (!(fiber.flags & 2)) return fiber.stateNode;
      }
    }
    function insertOrAppendPlacementNodeIntoContainer(node, before, parent) {
      var tag = node.tag;
      if (5 === tag || 6 === tag)
        (node = node.stateNode),
          before
            ? (warnForReactChildrenConflict(parent),
              (9 === parent.nodeType
                ? parent.body
                : "HTML" === parent.nodeName
                  ? parent.ownerDocument.body
                  : parent
              ).insertBefore(node, before))
            : (warnForReactChildrenConflict(parent),
              (before =
                9 === parent.nodeType
                  ? parent.body
                  : "HTML" === parent.nodeName
                    ? parent.ownerDocument.body
                    : parent),
              before.appendChild(node),
              (parent = parent._reactRootContainer),
              (null !== parent && void 0 !== parent) ||
                null !== before.onclick ||
                (before.onclick = noop$1));
      else if (
        4 !== tag &&
        (27 === tag &&
          isSingletonScope(node.type) &&
          ((parent = node.stateNode), (before = null)),
        (node = node.child),
        null !== node)
      )
        for (
          insertOrAppendPlacementNodeIntoContainer(node, before, parent),
            node = node.sibling;
          null !== node;

        )
          insertOrAppendPlacementNodeIntoContainer(node, before, parent),
            (node = node.sibling);
    }
    function insertOrAppendPlacementNode(node, before, parent) {
      var tag = node.tag;
      if (5 === tag || 6 === tag)
        (node = node.stateNode),
          before ? parent.insertBefore(node, before) : parent.appendChild(node);
      else if (
        4 !== tag &&
        (27 === tag && isSingletonScope(node.type) && (parent = node.stateNode),
        (node = node.child),
        null !== node)
      )
        for (
          insertOrAppendPlacementNode(node, before, parent),
            node = node.sibling;
          null !== node;

        )
          insertOrAppendPlacementNode(node, before, parent),
            (node = node.sibling);
    }
    function commitPlacement(finishedWork) {
      for (
        var hostParentFiber, parentFiber = finishedWork.return;
        null !== parentFiber;

      ) {
        if (isHostParent(parentFiber)) {
          hostParentFiber = parentFiber;
          break;
        }
        parentFiber = parentFiber.return;
      }
      if (null == hostParentFiber)
        throw Error(
          "Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue."
        );
      switch (hostParentFiber.tag) {
        case 27:
          hostParentFiber = hostParentFiber.stateNode;
          parentFiber = getHostSibling(finishedWork);
          insertOrAppendPlacementNode(
            finishedWork,
            parentFiber,
            hostParentFiber
          );
          break;
        case 5:
          parentFiber = hostParentFiber.stateNode;
          hostParentFiber.flags & 32 &&
            (resetTextContent(parentFiber), (hostParentFiber.flags &= -33));
          hostParentFiber = getHostSibling(finishedWork);
          insertOrAppendPlacementNode(
            finishedWork,
            hostParentFiber,
            parentFiber
          );
          break;
        case 3:
        case 4:
          hostParentFiber = hostParentFiber.stateNode.containerInfo;
          parentFiber = getHostSibling(finishedWork);
          insertOrAppendPlacementNodeIntoContainer(
            finishedWork,
            parentFiber,
            hostParentFiber
          );
          break;
        default:
          throw Error(
            "Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue."
          );
      }
    }
    function commitHostSingletonAcquisition(finishedWork) {
      var singleton = finishedWork.stateNode,
        props = finishedWork.memoizedProps;
      try {
        runWithFiberInDEV(
          finishedWork,
          acquireSingletonInstance,
          finishedWork.type,
          props,
          singleton,
          finishedWork
        );
      } catch (error) {
        captureCommitPhaseError(finishedWork, finishedWork.return, error);
      }
    }
    function isHydratingParent(current, finishedWork) {
      return 31 === finishedWork.tag
        ? ((finishedWork = finishedWork.memoizedState),
          null !== current.memoizedState && null === finishedWork)
        : 13 === finishedWork.tag
          ? ((current = current.memoizedState),
            (finishedWork = finishedWork.memoizedState),
            null !== current &&
              null !== current.dehydrated &&
              (null === finishedWork || null === finishedWork.dehydrated))
          : 3 === finishedWork.tag
            ? current.memoizedState.isDehydrated &&
              0 === (finishedWork.flags & 256)
            : !1;
    }
    function commitBeforeMutationEffects(root, firstChild) {
      root = root.containerInfo;
      eventsEnabled = _enabled;
      root = getActiveElementDeep(root);
      if (hasSelectionCapabilities(root)) {
        if ("selectionStart" in root)
          var JSCompiler_temp = {
            start: root.selectionStart,
            end: root.selectionEnd
          };
        else
          a: {
            JSCompiler_temp =
              ((JSCompiler_temp = root.ownerDocument) &&
                JSCompiler_temp.defaultView) ||
              window;
            var selection =
              JSCompiler_temp.getSelection && JSCompiler_temp.getSelection();
            if (selection && 0 !== selection.rangeCount) {
              JSCompiler_temp = selection.anchorNode;
              var anchorOffset = selection.anchorOffset,
                focusNode = selection.focusNode;
              selection = selection.focusOffset;
              try {
                JSCompiler_temp.nodeType, focusNode.nodeType;
              } catch (e$2) {
                JSCompiler_temp = null;
                break a;
              }
              var length = 0,
                start = -1,
                end = -1,
                indexWithinAnchor = 0,
                indexWithinFocus = 0,
                node = root,
                parentNode = null;
              b: for (;;) {
                for (var next; ; ) {
                  node !== JSCompiler_temp ||
                    (0 !== anchorOffset && 3 !== node.nodeType) ||
                    (start = length + anchorOffset);
                  node !== focusNode ||
                    (0 !== selection && 3 !== node.nodeType) ||
                    (end = length + selection);
                  3 === node.nodeType && (length += node.nodeValue.length);
                  if (null === (next = node.firstChild)) break;
                  parentNode = node;
                  node = next;
                }
                for (;;) {
                  if (node === root) break b;
                  parentNode === JSCompiler_temp &&
                    ++indexWithinAnchor === anchorOffset &&
                    (start = length);
                  parentNode === focusNode &&
                    ++indexWithinFocus === selection &&
                    (end = length);
                  if (null !== (next = node.nextSibling)) break;
                  node = parentNode;
                  parentNode = node.parentNode;
                }
                node = next;
              }
              JSCompiler_temp =
                -1 === start || -1 === end ? null : { start: start, end: end };
            } else JSCompiler_temp = null;
          }
        JSCompiler_temp = JSCompiler_temp || { start: 0, end: 0 };
      } else JSCompiler_temp = null;
      selectionInformation = {
        focusedElem: root,
        selectionRange: JSCompiler_temp
      };
      _enabled = !1;
      for (nextEffect = firstChild; null !== nextEffect; )
        if (
          ((firstChild = nextEffect),
          (root = firstChild.child),
          0 !== (firstChild.subtreeFlags & 1028) && null !== root)
        )
          (root.return = firstChild), (nextEffect = root);
        else
          for (; null !== nextEffect; ) {
            root = firstChild = nextEffect;
            JSCompiler_temp = root.alternate;
            anchorOffset = root.flags;
            switch (root.tag) {
              case 0:
                if (
                  0 !== (anchorOffset & 4) &&
                  ((root = root.updateQueue),
                  (root = null !== root ? root.events : null),
                  null !== root)
                )
                  for (
                    JSCompiler_temp = 0;
                    JSCompiler_temp < root.length;
                    JSCompiler_temp++
                  )
                    (anchorOffset = root[JSCompiler_temp]),
                      (anchorOffset.ref.impl = anchorOffset.nextImpl);
                break;
              case 11:
              case 15:
                break;
              case 1:
                0 !== (anchorOffset & 1024) &&
                  null !== JSCompiler_temp &&
                  commitClassSnapshot(root, JSCompiler_temp);
                break;
              case 3:
                if (0 !== (anchorOffset & 1024))
                  if (
                    ((root = root.stateNode.containerInfo),
                    (JSCompiler_temp = root.nodeType),
                    9 === JSCompiler_temp)
                  )
                    clearContainerSparingly(root);
                  else if (1 === JSCompiler_temp)
                    switch (root.nodeName) {
                      case "HEAD":
                      case "HTML":
                      case "BODY":
                        clearContainerSparingly(root);
                        break;
                      default:
                        root.textContent = "";
                    }
                break;
              case 5:
              case 26:
              case 27:
              case 6:
              case 4:
              case 17:
                break;
              default:
                if (0 !== (anchorOffset & 1024))
                  throw Error(
                    "This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue."
                  );
            }
            root = firstChild.sibling;
            if (null !== root) {
              root.return = firstChild.return;
              nextEffect = root;
              break;
            }
            nextEffect = firstChild.return;
          }
    }
    function commitLayoutEffectOnFiber(finishedRoot, current, finishedWork) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(),
        flags = finishedWork.flags;
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 15:
          recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
          flags & 4 &&
            commitHookLayoutEffects(finishedWork, Layout | HasEffect);
          break;
        case 1:
          recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
          if (flags & 4)
            if (((finishedRoot = finishedWork.stateNode), null === current))
              finishedWork.type.defaultProps ||
                "ref" in finishedWork.memoizedProps ||
                didWarnAboutReassigningProps ||
                (finishedRoot.props !== finishedWork.memoizedProps &&
                  console.error(
                    "Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
                    getComponentNameFromFiber(finishedWork) || "instance"
                  ),
                finishedRoot.state !== finishedWork.memoizedState &&
                  console.error(
                    "Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
                    getComponentNameFromFiber(finishedWork) || "instance"
                  )),
                shouldProfile(finishedWork)
                  ? (startEffectTimer(),
                    runWithFiberInDEV(
                      finishedWork,
                      callComponentDidMountInDEV,
                      finishedWork,
                      finishedRoot
                    ),
                    recordEffectDuration())
                  : runWithFiberInDEV(
                      finishedWork,
                      callComponentDidMountInDEV,
                      finishedWork,
                      finishedRoot
                    );
            else {
              var prevProps = resolveClassComponentProps(
                finishedWork.type,
                current.memoizedProps
              );
              current = current.memoizedState;
              finishedWork.type.defaultProps ||
                "ref" in finishedWork.memoizedProps ||
                didWarnAboutReassigningProps ||
                (finishedRoot.props !== finishedWork.memoizedProps &&
                  console.error(
                    "Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",
                    getComponentNameFromFiber(finishedWork) || "instance"
                  ),
                finishedRoot.state !== finishedWork.memoizedState &&
                  console.error(
                    "Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",
                    getComponentNameFromFiber(finishedWork) || "instance"
                  ));
              shouldProfile(finishedWork)
                ? (startEffectTimer(),
                  runWithFiberInDEV(
                    finishedWork,
                    callComponentDidUpdateInDEV,
                    finishedWork,
                    finishedRoot,
                    prevProps,
                    current,
                    finishedRoot.__reactInternalSnapshotBeforeUpdate
                  ),
                  recordEffectDuration())
                : runWithFiberInDEV(
                    finishedWork,
                    callComponentDidUpdateInDEV,
                    finishedWork,
                    finishedRoot,
                    prevProps,
                    current,
                    finishedRoot.__reactInternalSnapshotBeforeUpdate
                  );
            }
          flags & 64 && commitClassCallbacks(finishedWork);
          flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);
          break;
        case 3:
          current = pushNestedEffectDurations();
          recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
          if (
            flags & 64 &&
            ((flags = finishedWork.updateQueue), null !== flags)
          ) {
            prevProps = null;
            if (null !== finishedWork.child)
              switch (finishedWork.child.tag) {
                case 27:
                case 5:
                  prevProps = finishedWork.child.stateNode;
                  break;
                case 1:
                  prevProps = finishedWork.child.stateNode;
              }
            try {
              runWithFiberInDEV(
                finishedWork,
                commitCallbacks,
                flags,
                prevProps
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          }
          finishedRoot.effectDuration += popNestedEffectDurations(current);
          break;
        case 27:
          null === current &&
            flags & 4 &&
            commitHostSingletonAcquisition(finishedWork);
        case 26:
        case 5:
          recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
          if (null === current)
            if (flags & 4) commitHostMount(finishedWork);
            else if (flags & 64) {
              finishedRoot = finishedWork.type;
              current = finishedWork.memoizedProps;
              prevProps = finishedWork.stateNode;
              try {
                runWithFiberInDEV(
                  finishedWork,
                  commitHydratedInstance,
                  prevProps,
                  finishedRoot,
                  current,
                  finishedWork
                );
              } catch (error) {
                captureCommitPhaseError(
                  finishedWork,
                  finishedWork.return,
                  error
                );
              }
            }
          flags & 512 && safelyAttachRef(finishedWork, finishedWork.return);
          break;
        case 12:
          if (flags & 4) {
            flags = pushNestedEffectDurations();
            recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
            finishedRoot = finishedWork.stateNode;
            finishedRoot.effectDuration += bubbleNestedEffectDurations(flags);
            try {
              runWithFiberInDEV(
                finishedWork,
                commitProfiler,
                finishedWork,
                current,
                commitStartTime,
                finishedRoot.effectDuration
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          } else recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
          break;
        case 31:
          recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
          flags & 4 &&
            commitActivityHydrationCallbacks(finishedRoot, finishedWork);
          break;
        case 13:
          recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
          flags & 4 &&
            commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);
          flags & 64 &&
            ((finishedRoot = finishedWork.memoizedState),
            null !== finishedRoot &&
              ((finishedRoot = finishedRoot.dehydrated),
              null !== finishedRoot &&
                ((flags = retryDehydratedSuspenseBoundary.bind(
                  null,
                  finishedWork
                )),
                registerSuspenseInstanceRetry(finishedRoot, flags))));
          break;
        case 22:
          flags =
            null !== finishedWork.memoizedState || offscreenSubtreeIsHidden;
          if (!flags) {
            current =
              (null !== current && null !== current.memoizedState) ||
              offscreenSubtreeWasHidden;
            prevProps = offscreenSubtreeIsHidden;
            var prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;
            offscreenSubtreeIsHidden = flags;
            (offscreenSubtreeWasHidden = current) &&
            !prevOffscreenSubtreeWasHidden
              ? (recursivelyTraverseReappearLayoutEffects(
                  finishedRoot,
                  finishedWork,
                  0 !== (finishedWork.subtreeFlags & 8772)
                ),
                (finishedWork.mode & ProfileMode) !== NoMode &&
                  0 <= componentEffectStartTime &&
                  0 <= componentEffectEndTime &&
                  0.05 < componentEffectEndTime - componentEffectStartTime &&
                  logComponentReappeared(
                    finishedWork,
                    componentEffectStartTime,
                    componentEffectEndTime
                  ))
              : recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
            offscreenSubtreeIsHidden = prevProps;
            offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;
          }
          break;
        case 30:
          break;
        default:
          recursivelyTraverseLayoutEffects(finishedRoot, finishedWork);
      }
      (finishedWork.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        ((componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
          logComponentEffect(
            finishedWork,
            componentEffectStartTime,
            componentEffectEndTime,
            componentEffectDuration,
            componentEffectErrors
          ),
        null === finishedWork.alternate &&
          null !== finishedWork.return &&
          null !== finishedWork.return.alternate &&
          0.05 < componentEffectEndTime - componentEffectStartTime &&
          (isHydratingParent(
            finishedWork.return.alternate,
            finishedWork.return
          ) ||
            logComponentTrigger(
              finishedWork,
              componentEffectStartTime,
              componentEffectEndTime,
              "Mount"
            )));
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectErrors = prevEffectErrors;
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
    }
    function detachFiberAfterEffects(fiber) {
      var alternate = fiber.alternate;
      null !== alternate &&
        ((fiber.alternate = null), detachFiberAfterEffects(alternate));
      fiber.child = null;
      fiber.deletions = null;
      fiber.sibling = null;
      5 === fiber.tag &&
        ((alternate = fiber.stateNode),
        null !== alternate && detachDeletedInstance(alternate));
      fiber.stateNode = null;
      fiber._debugOwner = null;
      fiber.return = null;
      fiber.dependencies = null;
      fiber.memoizedProps = null;
      fiber.memoizedState = null;
      fiber.pendingProps = null;
      fiber.stateNode = null;
      fiber.updateQueue = null;
    }
    function recursivelyTraverseDeletionEffects(
      finishedRoot,
      nearestMountedAncestor,
      parent
    ) {
      for (parent = parent.child; null !== parent; )
        commitDeletionEffectsOnFiber(
          finishedRoot,
          nearestMountedAncestor,
          parent
        ),
          (parent = parent.sibling);
    }
    function commitDeletionEffectsOnFiber(
      finishedRoot,
      nearestMountedAncestor,
      deletedFiber
    ) {
      if (
        injectedHook &&
        "function" === typeof injectedHook.onCommitFiberUnmount
      )
        try {
          injectedHook.onCommitFiberUnmount(rendererID, deletedFiber);
        } catch (err) {
          hasLoggedError ||
            ((hasLoggedError = !0),
            console.error(
              "React instrumentation encountered an error: %o",
              err
            ));
        }
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
      switch (deletedFiber.tag) {
        case 26:
          offscreenSubtreeWasHidden ||
            safelyDetachRef(deletedFiber, nearestMountedAncestor);
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          deletedFiber.memoizedState
            ? deletedFiber.memoizedState.count--
            : deletedFiber.stateNode &&
              ((finishedRoot = deletedFiber.stateNode),
              finishedRoot.parentNode.removeChild(finishedRoot));
          break;
        case 27:
          offscreenSubtreeWasHidden ||
            safelyDetachRef(deletedFiber, nearestMountedAncestor);
          var prevHostParent = hostParent,
            prevHostParentIsContainer = hostParentIsContainer;
          isSingletonScope(deletedFiber.type) &&
            ((hostParent = deletedFiber.stateNode),
            (hostParentIsContainer = !1));
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          runWithFiberInDEV(
            deletedFiber,
            releaseSingletonInstance,
            deletedFiber.stateNode
          );
          hostParent = prevHostParent;
          hostParentIsContainer = prevHostParentIsContainer;
          break;
        case 5:
          offscreenSubtreeWasHidden ||
            safelyDetachRef(deletedFiber, nearestMountedAncestor);
        case 6:
          prevHostParent = hostParent;
          prevHostParentIsContainer = hostParentIsContainer;
          hostParent = null;
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          hostParent = prevHostParent;
          hostParentIsContainer = prevHostParentIsContainer;
          if (null !== hostParent)
            if (hostParentIsContainer)
              try {
                runWithFiberInDEV(
                  deletedFiber,
                  removeChildFromContainer,
                  hostParent,
                  deletedFiber.stateNode
                );
              } catch (error) {
                captureCommitPhaseError(
                  deletedFiber,
                  nearestMountedAncestor,
                  error
                );
              }
            else
              try {
                runWithFiberInDEV(
                  deletedFiber,
                  removeChild,
                  hostParent,
                  deletedFiber.stateNode
                );
              } catch (error) {
                captureCommitPhaseError(
                  deletedFiber,
                  nearestMountedAncestor,
                  error
                );
              }
          break;
        case 18:
          null !== hostParent &&
            (hostParentIsContainer
              ? ((finishedRoot = hostParent),
                clearHydrationBoundary(
                  9 === finishedRoot.nodeType
                    ? finishedRoot.body
                    : "HTML" === finishedRoot.nodeName
                      ? finishedRoot.ownerDocument.body
                      : finishedRoot,
                  deletedFiber.stateNode
                ),
                retryIfBlockedOn(finishedRoot))
              : clearHydrationBoundary(hostParent, deletedFiber.stateNode));
          break;
        case 4:
          prevHostParent = hostParent;
          prevHostParentIsContainer = hostParentIsContainer;
          hostParent = deletedFiber.stateNode.containerInfo;
          hostParentIsContainer = !0;
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          hostParent = prevHostParent;
          hostParentIsContainer = prevHostParentIsContainer;
          break;
        case 0:
        case 11:
        case 14:
        case 15:
          commitHookEffectListUnmount(
            Insertion,
            deletedFiber,
            nearestMountedAncestor
          );
          offscreenSubtreeWasHidden ||
            commitHookLayoutUnmountEffects(
              deletedFiber,
              nearestMountedAncestor,
              Layout
            );
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          break;
        case 1:
          offscreenSubtreeWasHidden ||
            (safelyDetachRef(deletedFiber, nearestMountedAncestor),
            (prevHostParent = deletedFiber.stateNode),
            "function" === typeof prevHostParent.componentWillUnmount &&
              safelyCallComponentWillUnmount(
                deletedFiber,
                nearestMountedAncestor,
                prevHostParent
              ));
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          break;
        case 21:
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          break;
        case 22:
          offscreenSubtreeWasHidden =
            (prevHostParent = offscreenSubtreeWasHidden) ||
            null !== deletedFiber.memoizedState;
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
          offscreenSubtreeWasHidden = prevHostParent;
          break;
        default:
          recursivelyTraverseDeletionEffects(
            finishedRoot,
            nearestMountedAncestor,
            deletedFiber
          );
      }
      (deletedFiber.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
        logComponentEffect(
          deletedFiber,
          componentEffectStartTime,
          componentEffectEndTime,
          componentEffectDuration,
          componentEffectErrors
        );
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectErrors = prevEffectErrors;
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
    }
    function commitActivityHydrationCallbacks(finishedRoot, finishedWork) {
      if (
        null === finishedWork.memoizedState &&
        ((finishedRoot = finishedWork.alternate),
        null !== finishedRoot &&
          ((finishedRoot = finishedRoot.memoizedState), null !== finishedRoot))
      ) {
        finishedRoot = finishedRoot.dehydrated;
        try {
          runWithFiberInDEV(
            finishedWork,
            commitHydratedActivityInstance,
            finishedRoot
          );
        } catch (error) {
          captureCommitPhaseError(finishedWork, finishedWork.return, error);
        }
      }
    }
    function commitSuspenseHydrationCallbacks(finishedRoot, finishedWork) {
      if (
        null === finishedWork.memoizedState &&
        ((finishedRoot = finishedWork.alternate),
        null !== finishedRoot &&
          ((finishedRoot = finishedRoot.memoizedState),
          null !== finishedRoot &&
            ((finishedRoot = finishedRoot.dehydrated), null !== finishedRoot)))
      )
        try {
          runWithFiberInDEV(
            finishedWork,
            commitHydratedSuspenseInstance,
            finishedRoot
          );
        } catch (error) {
          captureCommitPhaseError(finishedWork, finishedWork.return, error);
        }
    }
    function getRetryCache(finishedWork) {
      switch (finishedWork.tag) {
        case 31:
        case 13:
        case 19:
          var retryCache = finishedWork.stateNode;
          null === retryCache &&
            (retryCache = finishedWork.stateNode = new PossiblyWeakSet());
          return retryCache;
        case 22:
          return (
            (finishedWork = finishedWork.stateNode),
            (retryCache = finishedWork._retryCache),
            null === retryCache &&
              (retryCache = finishedWork._retryCache = new PossiblyWeakSet()),
            retryCache
          );
        default:
          throw Error(
            "Unexpected Suspense handler tag (" +
              finishedWork.tag +
              "). This is a bug in React."
          );
      }
    }
    function attachSuspenseRetryListeners(finishedWork, wakeables) {
      var retryCache = getRetryCache(finishedWork);
      wakeables.forEach(function (wakeable) {
        if (!retryCache.has(wakeable)) {
          retryCache.add(wakeable);
          if (isDevToolsPresent)
            if (null !== inProgressLanes && null !== inProgressRoot)
              restorePendingUpdaters(inProgressRoot, inProgressLanes);
            else
              throw Error(
                "Expected finished root and lanes to be set. This is a bug in React."
              );
          var retry = resolveRetryWakeable.bind(null, finishedWork, wakeable);
          wakeable.then(retry, retry);
        }
      });
    }
    function recursivelyTraverseMutationEffects(root$jscomp$0, parentFiber) {
      var deletions = parentFiber.deletions;
      if (null !== deletions)
        for (var i = 0; i < deletions.length; i++) {
          var root = root$jscomp$0,
            returnFiber = parentFiber,
            deletedFiber = deletions[i],
            prevEffectStart = pushComponentEffectStart(),
            parent = returnFiber;
          a: for (; null !== parent; ) {
            switch (parent.tag) {
              case 27:
                if (isSingletonScope(parent.type)) {
                  hostParent = parent.stateNode;
                  hostParentIsContainer = !1;
                  break a;
                }
                break;
              case 5:
                hostParent = parent.stateNode;
                hostParentIsContainer = !1;
                break a;
              case 3:
              case 4:
                hostParent = parent.stateNode.containerInfo;
                hostParentIsContainer = !0;
                break a;
            }
            parent = parent.return;
          }
          if (null === hostParent)
            throw Error(
              "Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue."
            );
          commitDeletionEffectsOnFiber(root, returnFiber, deletedFiber);
          hostParent = null;
          hostParentIsContainer = !1;
          (deletedFiber.mode & ProfileMode) !== NoMode &&
            0 <= componentEffectStartTime &&
            0 <= componentEffectEndTime &&
            0.05 < componentEffectEndTime - componentEffectStartTime &&
            logComponentTrigger(
              deletedFiber,
              componentEffectStartTime,
              componentEffectEndTime,
              "Unmount"
            );
          popComponentEffectStart(prevEffectStart);
          root = deletedFiber;
          returnFiber = root.alternate;
          null !== returnFiber && (returnFiber.return = null);
          root.return = null;
        }
      if (parentFiber.subtreeFlags & 13886)
        for (parentFiber = parentFiber.child; null !== parentFiber; )
          commitMutationEffectsOnFiber(parentFiber, root$jscomp$0),
            (parentFiber = parentFiber.sibling);
    }
    function commitMutationEffectsOnFiber(finishedWork, root) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(),
        current = finishedWork.alternate,
        flags = finishedWork.flags;
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 14:
        case 15:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          flags & 4 &&
            (commitHookEffectListUnmount(
              Insertion | HasEffect,
              finishedWork,
              finishedWork.return
            ),
            commitHookEffectListMount(Insertion | HasEffect, finishedWork),
            commitHookLayoutUnmountEffects(
              finishedWork,
              finishedWork.return,
              Layout | HasEffect
            ));
          break;
        case 1:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          flags & 512 &&
            (offscreenSubtreeWasHidden ||
              null === current ||
              safelyDetachRef(current, current.return));
          if (
            flags & 64 &&
            offscreenSubtreeIsHidden &&
            ((flags = finishedWork.updateQueue),
            null !== flags && ((current = flags.callbacks), null !== current))
          ) {
            var existingHiddenCallbacks = flags.shared.hiddenCallbacks;
            flags.shared.hiddenCallbacks =
              null === existingHiddenCallbacks
                ? current
                : existingHiddenCallbacks.concat(current);
          }
          break;
        case 26:
          existingHiddenCallbacks = currentHoistableRoot;
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          flags & 512 &&
            (offscreenSubtreeWasHidden ||
              null === current ||
              safelyDetachRef(current, current.return));
          if (flags & 4) {
            var currentResource =
              null !== current ? current.memoizedState : null;
            flags = finishedWork.memoizedState;
            if (null === current)
              if (null === flags)
                if (null === finishedWork.stateNode) {
                  a: {
                    flags = finishedWork.type;
                    current = finishedWork.memoizedProps;
                    existingHiddenCallbacks =
                      existingHiddenCallbacks.ownerDocument ||
                      existingHiddenCallbacks;
                    b: switch (flags) {
                      case "title":
                        currentResource =
                          existingHiddenCallbacks.getElementsByTagName(
                            "title"
                          )[0];
                        if (
                          !currentResource ||
                          currentResource[internalHoistableMarker] ||
                          currentResource[internalInstanceKey] ||
                          currentResource.namespaceURI === SVG_NAMESPACE ||
                          currentResource.hasAttribute("itemprop")
                        )
                          (currentResource =
                            existingHiddenCallbacks.createElement(flags)),
                            existingHiddenCallbacks.head.insertBefore(
                              currentResource,
                              existingHiddenCallbacks.querySelector(
                                "head > title"
                              )
                            );
                        setInitialProperties(currentResource, flags, current);
                        currentResource[internalInstanceKey] = finishedWork;
                        markNodeAsHoistable(currentResource);
                        flags = currentResource;
                        break a;
                      case "link":
                        var maybeNodes = getHydratableHoistableCache(
                          "link",
                          "href",
                          existingHiddenCallbacks
                        ).get(flags + (current.href || ""));
                        if (maybeNodes)
                          for (var i = 0; i < maybeNodes.length; i++)
                            if (
                              ((currentResource = maybeNodes[i]),
                              currentResource.getAttribute("href") ===
                                (null == current.href || "" === current.href
                                  ? null
                                  : current.href) &&
                                currentResource.getAttribute("rel") ===
                                  (null == current.rel ? null : current.rel) &&
                                currentResource.getAttribute("title") ===
                                  (null == current.title
                                    ? null
                                    : current.title) &&
                                currentResource.getAttribute("crossorigin") ===
                                  (null == current.crossOrigin
                                    ? null
                                    : current.crossOrigin))
                            ) {
                              maybeNodes.splice(i, 1);
                              break b;
                            }
                        currentResource =
                          existingHiddenCallbacks.createElement(flags);
                        setInitialProperties(currentResource, flags, current);
                        existingHiddenCallbacks.head.appendChild(
                          currentResource
                        );
                        break;
                      case "meta":
                        if (
                          (maybeNodes = getHydratableHoistableCache(
                            "meta",
                            "content",
                            existingHiddenCallbacks
                          ).get(flags + (current.content || "")))
                        )
                          for (i = 0; i < maybeNodes.length; i++)
                            if (
                              ((currentResource = maybeNodes[i]),
                              checkAttributeStringCoercion(
                                current.content,
                                "content"
                              ),
                              currentResource.getAttribute("content") ===
                                (null == current.content
                                  ? null
                                  : "" + current.content) &&
                                currentResource.getAttribute("name") ===
                                  (null == current.name
                                    ? null
                                    : current.name) &&
                                currentResource.getAttribute("property") ===
                                  (null == current.property
                                    ? null
                                    : current.property) &&
                                currentResource.getAttribute("http-equiv") ===
                                  (null == current.httpEquiv
                                    ? null
                                    : current.httpEquiv) &&
                                currentResource.getAttribute("charset") ===
                                  (null == current.charSet
                                    ? null
                                    : current.charSet))
                            ) {
                              maybeNodes.splice(i, 1);
                              break b;
                            }
                        currentResource =
                          existingHiddenCallbacks.createElement(flags);
                        setInitialProperties(currentResource, flags, current);
                        existingHiddenCallbacks.head.appendChild(
                          currentResource
                        );
                        break;
                      default:
                        throw Error(
                          'getNodesForType encountered a type it did not expect: "' +
                            flags +
                            '". This is a bug in React.'
                        );
                    }
                    currentResource[internalInstanceKey] = finishedWork;
                    markNodeAsHoistable(currentResource);
                    flags = currentResource;
                  }
                  finishedWork.stateNode = flags;
                } else
                  mountHoistable(
                    existingHiddenCallbacks,
                    finishedWork.type,
                    finishedWork.stateNode
                  );
              else
                finishedWork.stateNode = acquireResource(
                  existingHiddenCallbacks,
                  flags,
                  finishedWork.memoizedProps
                );
            else
              currentResource !== flags
                ? (null === currentResource
                    ? null !== current.stateNode &&
                      ((current = current.stateNode),
                      current.parentNode.removeChild(current))
                    : currentResource.count--,
                  null === flags
                    ? mountHoistable(
                        existingHiddenCallbacks,
                        finishedWork.type,
                        finishedWork.stateNode
                      )
                    : acquireResource(
                        existingHiddenCallbacks,
                        flags,
                        finishedWork.memoizedProps
                      ))
                : null === flags &&
                  null !== finishedWork.stateNode &&
                  commitHostUpdate(
                    finishedWork,
                    finishedWork.memoizedProps,
                    current.memoizedProps
                  );
          }
          break;
        case 27:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          flags & 512 &&
            (offscreenSubtreeWasHidden ||
              null === current ||
              safelyDetachRef(current, current.return));
          null !== current &&
            flags & 4 &&
            commitHostUpdate(
              finishedWork,
              finishedWork.memoizedProps,
              current.memoizedProps
            );
          break;
        case 5:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          flags & 512 &&
            (offscreenSubtreeWasHidden ||
              null === current ||
              safelyDetachRef(current, current.return));
          if (finishedWork.flags & 32) {
            existingHiddenCallbacks = finishedWork.stateNode;
            try {
              runWithFiberInDEV(
                finishedWork,
                resetTextContent,
                existingHiddenCallbacks
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          }
          flags & 4 &&
            null != finishedWork.stateNode &&
            ((existingHiddenCallbacks = finishedWork.memoizedProps),
            commitHostUpdate(
              finishedWork,
              existingHiddenCallbacks,
              null !== current ? current.memoizedProps : existingHiddenCallbacks
            ));
          flags & 1024 &&
            ((needsFormReset = !0),
            "form" !== finishedWork.type &&
              console.error(
                "Unexpected host component type. Expected a form. This is a bug in React."
              ));
          break;
        case 6:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          if (flags & 4) {
            if (null === finishedWork.stateNode)
              throw Error(
                "This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue."
              );
            flags = finishedWork.memoizedProps;
            current = null !== current ? current.memoizedProps : flags;
            existingHiddenCallbacks = finishedWork.stateNode;
            try {
              runWithFiberInDEV(
                finishedWork,
                commitTextUpdate,
                existingHiddenCallbacks,
                current,
                flags
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          }
          break;
        case 3:
          existingHiddenCallbacks = pushNestedEffectDurations();
          tagCaches = null;
          currentResource = currentHoistableRoot;
          currentHoistableRoot = getHoistableRoot(root.containerInfo);
          recursivelyTraverseMutationEffects(root, finishedWork);
          currentHoistableRoot = currentResource;
          commitReconciliationEffects(finishedWork);
          if (
            flags & 4 &&
            null !== current &&
            current.memoizedState.isDehydrated
          )
            try {
              runWithFiberInDEV(
                finishedWork,
                commitHydratedContainer,
                root.containerInfo
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          needsFormReset &&
            ((needsFormReset = !1), recursivelyResetForms(finishedWork));
          root.effectDuration += popNestedEffectDurations(
            existingHiddenCallbacks
          );
          break;
        case 4:
          flags = currentHoistableRoot;
          currentHoistableRoot = getHoistableRoot(
            finishedWork.stateNode.containerInfo
          );
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          currentHoistableRoot = flags;
          break;
        case 12:
          flags = pushNestedEffectDurations();
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          finishedWork.stateNode.effectDuration +=
            bubbleNestedEffectDurations(flags);
          break;
        case 31:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          flags & 4 &&
            ((flags = finishedWork.updateQueue),
            null !== flags &&
              ((finishedWork.updateQueue = null),
              attachSuspenseRetryListeners(finishedWork, flags)));
          break;
        case 13:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          finishedWork.child.flags & 8192 &&
            (null !== finishedWork.memoizedState) !==
              (null !== current && null !== current.memoizedState) &&
            (globalMostRecentFallbackTime = now$1());
          flags & 4 &&
            ((flags = finishedWork.updateQueue),
            null !== flags &&
              ((finishedWork.updateQueue = null),
              attachSuspenseRetryListeners(finishedWork, flags)));
          break;
        case 22:
          existingHiddenCallbacks = null !== finishedWork.memoizedState;
          var wasHidden = null !== current && null !== current.memoizedState,
            prevOffscreenSubtreeIsHidden = offscreenSubtreeIsHidden,
            prevOffscreenSubtreeWasHidden = offscreenSubtreeWasHidden;
          offscreenSubtreeIsHidden =
            prevOffscreenSubtreeIsHidden || existingHiddenCallbacks;
          offscreenSubtreeWasHidden =
            prevOffscreenSubtreeWasHidden || wasHidden;
          recursivelyTraverseMutationEffects(root, finishedWork);
          offscreenSubtreeWasHidden = prevOffscreenSubtreeWasHidden;
          offscreenSubtreeIsHidden = prevOffscreenSubtreeIsHidden;
          wasHidden &&
            !existingHiddenCallbacks &&
            !prevOffscreenSubtreeIsHidden &&
            !prevOffscreenSubtreeWasHidden &&
            (finishedWork.mode & ProfileMode) !== NoMode &&
            0 <= componentEffectStartTime &&
            0 <= componentEffectEndTime &&
            0.05 < componentEffectEndTime - componentEffectStartTime &&
            logComponentReappeared(
              finishedWork,
              componentEffectStartTime,
              componentEffectEndTime
            );
          commitReconciliationEffects(finishedWork);
          if (flags & 8192)
            a: for (
              root = finishedWork.stateNode,
                root._visibility = existingHiddenCallbacks
                  ? root._visibility & ~OffscreenVisible
                  : root._visibility | OffscreenVisible,
                !existingHiddenCallbacks ||
                  null === current ||
                  wasHidden ||
                  offscreenSubtreeIsHidden ||
                  offscreenSubtreeWasHidden ||
                  (recursivelyTraverseDisappearLayoutEffects(finishedWork),
                  (finishedWork.mode & ProfileMode) !== NoMode &&
                    0 <= componentEffectStartTime &&
                    0 <= componentEffectEndTime &&
                    0.05 < componentEffectEndTime - componentEffectStartTime &&
                    logComponentTrigger(
                      finishedWork,
                      componentEffectStartTime,
                      componentEffectEndTime,
                      "Disconnect"
                    )),
                current = null,
                root = finishedWork;
              ;

            ) {
              if (5 === root.tag || 26 === root.tag) {
                if (null === current) {
                  wasHidden = current = root;
                  try {
                    (currentResource = wasHidden.stateNode),
                      existingHiddenCallbacks
                        ? runWithFiberInDEV(
                            wasHidden,
                            hideInstance,
                            currentResource
                          )
                        : runWithFiberInDEV(
                            wasHidden,
                            unhideInstance,
                            wasHidden.stateNode,
                            wasHidden.memoizedProps
                          );
                  } catch (error) {
                    captureCommitPhaseError(wasHidden, wasHidden.return, error);
                  }
                }
              } else if (6 === root.tag) {
                if (null === current) {
                  wasHidden = root;
                  try {
                    (maybeNodes = wasHidden.stateNode),
                      existingHiddenCallbacks
                        ? runWithFiberInDEV(
                            wasHidden,
                            hideTextInstance,
                            maybeNodes
                          )
                        : runWithFiberInDEV(
                            wasHidden,
                            unhideTextInstance,
                            maybeNodes,
                            wasHidden.memoizedProps
                          );
                  } catch (error) {
                    captureCommitPhaseError(wasHidden, wasHidden.return, error);
                  }
                }
              } else if (18 === root.tag) {
                if (null === current) {
                  wasHidden = root;
                  try {
                    (i = wasHidden.stateNode),
                      existingHiddenCallbacks
                        ? runWithFiberInDEV(
                            wasHidden,
                            hideDehydratedBoundary,
                            i
                          )
                        : runWithFiberInDEV(
                            wasHidden,
                            unhideDehydratedBoundary,
                            wasHidden.stateNode
                          );
                  } catch (error) {
                    captureCommitPhaseError(wasHidden, wasHidden.return, error);
                  }
                }
              } else if (
                ((22 !== root.tag && 23 !== root.tag) ||
                  null === root.memoizedState ||
                  root === finishedWork) &&
                null !== root.child
              ) {
                root.child.return = root;
                root = root.child;
                continue;
              }
              if (root === finishedWork) break a;
              for (; null === root.sibling; ) {
                if (null === root.return || root.return === finishedWork)
                  break a;
                current === root && (current = null);
                root = root.return;
              }
              current === root && (current = null);
              root.sibling.return = root.return;
              root = root.sibling;
            }
          flags & 4 &&
            ((flags = finishedWork.updateQueue),
            null !== flags &&
              ((current = flags.retryQueue),
              null !== current &&
                ((flags.retryQueue = null),
                attachSuspenseRetryListeners(finishedWork, current))));
          break;
        case 19:
          recursivelyTraverseMutationEffects(root, finishedWork);
          commitReconciliationEffects(finishedWork);
          flags & 4 &&
            ((flags = finishedWork.updateQueue),
            null !== flags &&
              ((finishedWork.updateQueue = null),
              attachSuspenseRetryListeners(finishedWork, flags)));
          break;
        case 30:
          break;
        case 21:
          break;
        default:
          recursivelyTraverseMutationEffects(root, finishedWork),
            commitReconciliationEffects(finishedWork);
      }
      (finishedWork.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        ((componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
          logComponentEffect(
            finishedWork,
            componentEffectStartTime,
            componentEffectEndTime,
            componentEffectDuration,
            componentEffectErrors
          ),
        null === finishedWork.alternate &&
          null !== finishedWork.return &&
          null !== finishedWork.return.alternate &&
          0.05 < componentEffectEndTime - componentEffectStartTime &&
          (isHydratingParent(
            finishedWork.return.alternate,
            finishedWork.return
          ) ||
            logComponentTrigger(
              finishedWork,
              componentEffectStartTime,
              componentEffectEndTime,
              "Mount"
            )));
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectErrors = prevEffectErrors;
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
    }
    function commitReconciliationEffects(finishedWork) {
      var flags = finishedWork.flags;
      if (flags & 2) {
        try {
          runWithFiberInDEV(finishedWork, commitPlacement, finishedWork);
        } catch (error) {
          captureCommitPhaseError(finishedWork, finishedWork.return, error);
        }
        finishedWork.flags &= -3;
      }
      flags & 4096 && (finishedWork.flags &= -4097);
    }
    function recursivelyResetForms(parentFiber) {
      if (parentFiber.subtreeFlags & 1024)
        for (parentFiber = parentFiber.child; null !== parentFiber; ) {
          var fiber = parentFiber;
          recursivelyResetForms(fiber);
          5 === fiber.tag && fiber.flags & 1024 && fiber.stateNode.reset();
          parentFiber = parentFiber.sibling;
        }
    }
    function recursivelyTraverseLayoutEffects(root, parentFiber) {
      if (parentFiber.subtreeFlags & 8772)
        for (parentFiber = parentFiber.child; null !== parentFiber; )
          commitLayoutEffectOnFiber(root, parentFiber.alternate, parentFiber),
            (parentFiber = parentFiber.sibling);
    }
    function disappearLayoutEffects(finishedWork) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 14:
        case 15:
          commitHookLayoutUnmountEffects(
            finishedWork,
            finishedWork.return,
            Layout
          );
          recursivelyTraverseDisappearLayoutEffects(finishedWork);
          break;
        case 1:
          safelyDetachRef(finishedWork, finishedWork.return);
          var instance = finishedWork.stateNode;
          "function" === typeof instance.componentWillUnmount &&
            safelyCallComponentWillUnmount(
              finishedWork,
              finishedWork.return,
              instance
            );
          recursivelyTraverseDisappearLayoutEffects(finishedWork);
          break;
        case 27:
          runWithFiberInDEV(
            finishedWork,
            releaseSingletonInstance,
            finishedWork.stateNode
          );
        case 26:
        case 5:
          safelyDetachRef(finishedWork, finishedWork.return);
          recursivelyTraverseDisappearLayoutEffects(finishedWork);
          break;
        case 22:
          null === finishedWork.memoizedState &&
            recursivelyTraverseDisappearLayoutEffects(finishedWork);
          break;
        case 30:
          recursivelyTraverseDisappearLayoutEffects(finishedWork);
          break;
        default:
          recursivelyTraverseDisappearLayoutEffects(finishedWork);
      }
      (finishedWork.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
        logComponentEffect(
          finishedWork,
          componentEffectStartTime,
          componentEffectEndTime,
          componentEffectDuration,
          componentEffectErrors
        );
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectErrors = prevEffectErrors;
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
    }
    function recursivelyTraverseDisappearLayoutEffects(parentFiber) {
      for (parentFiber = parentFiber.child; null !== parentFiber; )
        disappearLayoutEffects(parentFiber),
          (parentFiber = parentFiber.sibling);
    }
    function reappearLayoutEffects(
      finishedRoot,
      current,
      finishedWork,
      includeWorkInProgressEffects
    ) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(),
        flags = finishedWork.flags;
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 15:
          recursivelyTraverseReappearLayoutEffects(
            finishedRoot,
            finishedWork,
            includeWorkInProgressEffects
          );
          commitHookLayoutEffects(finishedWork, Layout);
          break;
        case 1:
          recursivelyTraverseReappearLayoutEffects(
            finishedRoot,
            finishedWork,
            includeWorkInProgressEffects
          );
          current = finishedWork.stateNode;
          "function" === typeof current.componentDidMount &&
            runWithFiberInDEV(
              finishedWork,
              callComponentDidMountInDEV,
              finishedWork,
              current
            );
          current = finishedWork.updateQueue;
          if (null !== current) {
            finishedRoot = finishedWork.stateNode;
            try {
              runWithFiberInDEV(
                finishedWork,
                commitHiddenCallbacks,
                current,
                finishedRoot
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          }
          includeWorkInProgressEffects &&
            flags & 64 &&
            commitClassCallbacks(finishedWork);
          safelyAttachRef(finishedWork, finishedWork.return);
          break;
        case 27:
          commitHostSingletonAcquisition(finishedWork);
        case 26:
        case 5:
          recursivelyTraverseReappearLayoutEffects(
            finishedRoot,
            finishedWork,
            includeWorkInProgressEffects
          );
          includeWorkInProgressEffects &&
            null === current &&
            flags & 4 &&
            commitHostMount(finishedWork);
          safelyAttachRef(finishedWork, finishedWork.return);
          break;
        case 12:
          if (includeWorkInProgressEffects && flags & 4) {
            flags = pushNestedEffectDurations();
            recursivelyTraverseReappearLayoutEffects(
              finishedRoot,
              finishedWork,
              includeWorkInProgressEffects
            );
            includeWorkInProgressEffects = finishedWork.stateNode;
            includeWorkInProgressEffects.effectDuration +=
              bubbleNestedEffectDurations(flags);
            try {
              runWithFiberInDEV(
                finishedWork,
                commitProfiler,
                finishedWork,
                current,
                commitStartTime,
                includeWorkInProgressEffects.effectDuration
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          } else
            recursivelyTraverseReappearLayoutEffects(
              finishedRoot,
              finishedWork,
              includeWorkInProgressEffects
            );
          break;
        case 31:
          recursivelyTraverseReappearLayoutEffects(
            finishedRoot,
            finishedWork,
            includeWorkInProgressEffects
          );
          includeWorkInProgressEffects &&
            flags & 4 &&
            commitActivityHydrationCallbacks(finishedRoot, finishedWork);
          break;
        case 13:
          recursivelyTraverseReappearLayoutEffects(
            finishedRoot,
            finishedWork,
            includeWorkInProgressEffects
          );
          includeWorkInProgressEffects &&
            flags & 4 &&
            commitSuspenseHydrationCallbacks(finishedRoot, finishedWork);
          break;
        case 22:
          null === finishedWork.memoizedState &&
            recursivelyTraverseReappearLayoutEffects(
              finishedRoot,
              finishedWork,
              includeWorkInProgressEffects
            );
          safelyAttachRef(finishedWork, finishedWork.return);
          break;
        case 30:
          break;
        default:
          recursivelyTraverseReappearLayoutEffects(
            finishedRoot,
            finishedWork,
            includeWorkInProgressEffects
          );
      }
      (finishedWork.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
        logComponentEffect(
          finishedWork,
          componentEffectStartTime,
          componentEffectEndTime,
          componentEffectDuration,
          componentEffectErrors
        );
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectErrors = prevEffectErrors;
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
    }
    function recursivelyTraverseReappearLayoutEffects(
      finishedRoot,
      parentFiber,
      includeWorkInProgressEffects
    ) {
      includeWorkInProgressEffects =
        includeWorkInProgressEffects && 0 !== (parentFiber.subtreeFlags & 8772);
      for (parentFiber = parentFiber.child; null !== parentFiber; )
        reappearLayoutEffects(
          finishedRoot,
          parentFiber.alternate,
          parentFiber,
          includeWorkInProgressEffects
        ),
          (parentFiber = parentFiber.sibling);
    }
    function commitOffscreenPassiveMountEffects(current, finishedWork) {
      var previousCache = null;
      null !== current &&
        null !== current.memoizedState &&
        null !== current.memoizedState.cachePool &&
        (previousCache = current.memoizedState.cachePool.pool);
      current = null;
      null !== finishedWork.memoizedState &&
        null !== finishedWork.memoizedState.cachePool &&
        (current = finishedWork.memoizedState.cachePool.pool);
      current !== previousCache &&
        (null != current && retainCache(current),
        null != previousCache && releaseCache(previousCache));
    }
    function commitCachePassiveMountEffect(current, finishedWork) {
      current = null;
      null !== finishedWork.alternate &&
        (current = finishedWork.alternate.memoizedState.cache);
      finishedWork = finishedWork.memoizedState.cache;
      finishedWork !== current &&
        (retainCache(finishedWork), null != current && releaseCache(current));
    }
    function recursivelyTraversePassiveMountEffects(
      root,
      parentFiber,
      committedLanes,
      committedTransitions,
      endTime
    ) {
      if (
        parentFiber.subtreeFlags & 10256 ||
        (0 !== parentFiber.actualDuration &&
          (null === parentFiber.alternate ||
            parentFiber.alternate.child !== parentFiber.child))
      )
        for (parentFiber = parentFiber.child; null !== parentFiber; ) {
          var nextSibling = parentFiber.sibling;
          commitPassiveMountOnFiber(
            root,
            parentFiber,
            committedLanes,
            committedTransitions,
            null !== nextSibling ? nextSibling.actualStartTime : endTime
          );
          parentFiber = nextSibling;
        }
    }
    function commitPassiveMountOnFiber(
      finishedRoot,
      finishedWork,
      committedLanes,
      committedTransitions,
      endTime
    ) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(),
        prevDeepEquality = alreadyWarnedForDeepEquality,
        flags = finishedWork.flags;
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 15:
          (finishedWork.mode & ProfileMode) !== NoMode &&
            0 < finishedWork.actualStartTime &&
            0 !== (finishedWork.flags & 1) &&
            logComponentRender(
              finishedWork,
              finishedWork.actualStartTime,
              endTime,
              inHydratedSubtree,
              committedLanes
            );
          recursivelyTraversePassiveMountEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            endTime
          );
          flags & 2048 &&
            commitHookPassiveMountEffects(finishedWork, Passive | HasEffect);
          break;
        case 1:
          (finishedWork.mode & ProfileMode) !== NoMode &&
            0 < finishedWork.actualStartTime &&
            (0 !== (finishedWork.flags & 128)
              ? logComponentErrored(
                  finishedWork,
                  finishedWork.actualStartTime,
                  endTime,
                  []
                )
              : 0 !== (finishedWork.flags & 1) &&
                logComponentRender(
                  finishedWork,
                  finishedWork.actualStartTime,
                  endTime,
                  inHydratedSubtree,
                  committedLanes
                ));
          recursivelyTraversePassiveMountEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            endTime
          );
          break;
        case 3:
          var prevProfilerEffectDuration = pushNestedEffectDurations(),
            wasInHydratedSubtree = inHydratedSubtree;
          inHydratedSubtree =
            null !== finishedWork.alternate &&
            finishedWork.alternate.memoizedState.isDehydrated &&
            0 === (finishedWork.flags & 256);
          recursivelyTraversePassiveMountEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            endTime
          );
          inHydratedSubtree = wasInHydratedSubtree;
          flags & 2048 &&
            ((committedLanes = null),
            null !== finishedWork.alternate &&
              (committedLanes = finishedWork.alternate.memoizedState.cache),
            (committedTransitions = finishedWork.memoizedState.cache),
            committedTransitions !== committedLanes &&
              (retainCache(committedTransitions),
              null != committedLanes && releaseCache(committedLanes)));
          finishedRoot.passiveEffectDuration += popNestedEffectDurations(
            prevProfilerEffectDuration
          );
          break;
        case 12:
          if (flags & 2048) {
            flags = pushNestedEffectDurations();
            recursivelyTraversePassiveMountEffects(
              finishedRoot,
              finishedWork,
              committedLanes,
              committedTransitions,
              endTime
            );
            finishedRoot = finishedWork.stateNode;
            finishedRoot.passiveEffectDuration +=
              bubbleNestedEffectDurations(flags);
            try {
              runWithFiberInDEV(
                finishedWork,
                commitProfilerPostCommitImpl,
                finishedWork,
                finishedWork.alternate,
                commitStartTime,
                finishedRoot.passiveEffectDuration
              );
            } catch (error) {
              captureCommitPhaseError(finishedWork, finishedWork.return, error);
            }
          } else
            recursivelyTraversePassiveMountEffects(
              finishedRoot,
              finishedWork,
              committedLanes,
              committedTransitions,
              endTime
            );
          break;
        case 31:
          flags = inHydratedSubtree;
          prevProfilerEffectDuration =
            null !== finishedWork.alternate
              ? finishedWork.alternate.memoizedState
              : null;
          wasInHydratedSubtree = finishedWork.memoizedState;
          null !== prevProfilerEffectDuration && null === wasInHydratedSubtree
            ? ((wasInHydratedSubtree = finishedWork.deletions),
              null !== wasInHydratedSubtree &&
              0 < wasInHydratedSubtree.length &&
              18 === wasInHydratedSubtree[0].tag
                ? ((inHydratedSubtree = !1),
                  (prevProfilerEffectDuration =
                    prevProfilerEffectDuration.hydrationErrors),
                  null !== prevProfilerEffectDuration &&
                    logComponentErrored(
                      finishedWork,
                      finishedWork.actualStartTime,
                      endTime,
                      prevProfilerEffectDuration
                    ))
                : (inHydratedSubtree = !0))
            : (inHydratedSubtree = !1);
          recursivelyTraversePassiveMountEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            endTime
          );
          inHydratedSubtree = flags;
          break;
        case 13:
          flags = inHydratedSubtree;
          prevProfilerEffectDuration =
            null !== finishedWork.alternate
              ? finishedWork.alternate.memoizedState
              : null;
          wasInHydratedSubtree = finishedWork.memoizedState;
          null === prevProfilerEffectDuration ||
          null === prevProfilerEffectDuration.dehydrated ||
          (null !== wasInHydratedSubtree &&
            null !== wasInHydratedSubtree.dehydrated)
            ? (inHydratedSubtree = !1)
            : ((wasInHydratedSubtree = finishedWork.deletions),
              null !== wasInHydratedSubtree &&
              0 < wasInHydratedSubtree.length &&
              18 === wasInHydratedSubtree[0].tag
                ? ((inHydratedSubtree = !1),
                  (prevProfilerEffectDuration =
                    prevProfilerEffectDuration.hydrationErrors),
                  null !== prevProfilerEffectDuration &&
                    logComponentErrored(
                      finishedWork,
                      finishedWork.actualStartTime,
                      endTime,
                      prevProfilerEffectDuration
                    ))
                : (inHydratedSubtree = !0));
          recursivelyTraversePassiveMountEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            endTime
          );
          inHydratedSubtree = flags;
          break;
        case 23:
          break;
        case 22:
          wasInHydratedSubtree = finishedWork.stateNode;
          prevProfilerEffectDuration = finishedWork.alternate;
          null !== finishedWork.memoizedState
            ? wasInHydratedSubtree._visibility &
              OffscreenPassiveEffectsConnected
              ? recursivelyTraversePassiveMountEffects(
                  finishedRoot,
                  finishedWork,
                  committedLanes,
                  committedTransitions,
                  endTime
                )
              : recursivelyTraverseAtomicPassiveEffects(
                  finishedRoot,
                  finishedWork,
                  committedLanes,
                  committedTransitions,
                  endTime
                )
            : wasInHydratedSubtree._visibility &
                OffscreenPassiveEffectsConnected
              ? recursivelyTraversePassiveMountEffects(
                  finishedRoot,
                  finishedWork,
                  committedLanes,
                  committedTransitions,
                  endTime
                )
              : ((wasInHydratedSubtree._visibility |=
                  OffscreenPassiveEffectsConnected),
                recursivelyTraverseReconnectPassiveEffects(
                  finishedRoot,
                  finishedWork,
                  committedLanes,
                  committedTransitions,
                  0 !== (finishedWork.subtreeFlags & 10256) ||
                    (0 !== finishedWork.actualDuration &&
                      (null === finishedWork.alternate ||
                        finishedWork.alternate.child !== finishedWork.child)),
                  endTime
                ),
                (finishedWork.mode & ProfileMode) === NoMode ||
                  inHydratedSubtree ||
                  ((finishedRoot = finishedWork.actualStartTime),
                  0 <= finishedRoot &&
                    0.05 < endTime - finishedRoot &&
                    logComponentReappeared(finishedWork, finishedRoot, endTime),
                  0 <= componentEffectStartTime &&
                    0 <= componentEffectEndTime &&
                    0.05 < componentEffectEndTime - componentEffectStartTime &&
                    logComponentReappeared(
                      finishedWork,
                      componentEffectStartTime,
                      componentEffectEndTime
                    )));
          flags & 2048 &&
            commitOffscreenPassiveMountEffects(
              prevProfilerEffectDuration,
              finishedWork
            );
          break;
        case 24:
          recursivelyTraversePassiveMountEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            endTime
          );
          flags & 2048 &&
            commitCachePassiveMountEffect(finishedWork.alternate, finishedWork);
          break;
        default:
          recursivelyTraversePassiveMountEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            endTime
          );
      }
      if ((finishedWork.mode & ProfileMode) !== NoMode) {
        if (
          (finishedRoot =
            !inHydratedSubtree &&
            null === finishedWork.alternate &&
            null !== finishedWork.return &&
            null !== finishedWork.return.alternate)
        )
          (committedLanes = finishedWork.actualStartTime),
            0 <= committedLanes &&
              0.05 < endTime - committedLanes &&
              logComponentTrigger(
                finishedWork,
                committedLanes,
                endTime,
                "Mount"
              );
        0 <= componentEffectStartTime &&
          0 <= componentEffectEndTime &&
          ((componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
            logComponentEffect(
              finishedWork,
              componentEffectStartTime,
              componentEffectEndTime,
              componentEffectDuration,
              componentEffectErrors
            ),
          finishedRoot &&
            0.05 < componentEffectEndTime - componentEffectStartTime &&
            logComponentTrigger(
              finishedWork,
              componentEffectStartTime,
              componentEffectEndTime,
              "Mount"
            ));
      }
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectErrors = prevEffectErrors;
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
      alreadyWarnedForDeepEquality = prevDeepEquality;
    }
    function recursivelyTraverseReconnectPassiveEffects(
      finishedRoot,
      parentFiber,
      committedLanes,
      committedTransitions,
      includeWorkInProgressEffects,
      endTime
    ) {
      includeWorkInProgressEffects =
        includeWorkInProgressEffects &&
        (0 !== (parentFiber.subtreeFlags & 10256) ||
          (0 !== parentFiber.actualDuration &&
            (null === parentFiber.alternate ||
              parentFiber.alternate.child !== parentFiber.child)));
      for (parentFiber = parentFiber.child; null !== parentFiber; ) {
        var nextSibling = parentFiber.sibling;
        reconnectPassiveEffects(
          finishedRoot,
          parentFiber,
          committedLanes,
          committedTransitions,
          includeWorkInProgressEffects,
          null !== nextSibling ? nextSibling.actualStartTime : endTime
        );
        parentFiber = nextSibling;
      }
    }
    function reconnectPassiveEffects(
      finishedRoot,
      finishedWork,
      committedLanes,
      committedTransitions,
      includeWorkInProgressEffects,
      endTime
    ) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate(),
        prevDeepEquality = alreadyWarnedForDeepEquality;
      includeWorkInProgressEffects &&
        (finishedWork.mode & ProfileMode) !== NoMode &&
        0 < finishedWork.actualStartTime &&
        0 !== (finishedWork.flags & 1) &&
        logComponentRender(
          finishedWork,
          finishedWork.actualStartTime,
          endTime,
          inHydratedSubtree,
          committedLanes
        );
      var flags = finishedWork.flags;
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 15:
          recursivelyTraverseReconnectPassiveEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            includeWorkInProgressEffects,
            endTime
          );
          commitHookPassiveMountEffects(finishedWork, Passive);
          break;
        case 23:
          break;
        case 22:
          var _instance2 = finishedWork.stateNode;
          null !== finishedWork.memoizedState
            ? _instance2._visibility & OffscreenPassiveEffectsConnected
              ? recursivelyTraverseReconnectPassiveEffects(
                  finishedRoot,
                  finishedWork,
                  committedLanes,
                  committedTransitions,
                  includeWorkInProgressEffects,
                  endTime
                )
              : recursivelyTraverseAtomicPassiveEffects(
                  finishedRoot,
                  finishedWork,
                  committedLanes,
                  committedTransitions,
                  endTime
                )
            : ((_instance2._visibility |= OffscreenPassiveEffectsConnected),
              recursivelyTraverseReconnectPassiveEffects(
                finishedRoot,
                finishedWork,
                committedLanes,
                committedTransitions,
                includeWorkInProgressEffects,
                endTime
              ));
          includeWorkInProgressEffects &&
            flags & 2048 &&
            commitOffscreenPassiveMountEffects(
              finishedWork.alternate,
              finishedWork
            );
          break;
        case 24:
          recursivelyTraverseReconnectPassiveEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            includeWorkInProgressEffects,
            endTime
          );
          includeWorkInProgressEffects &&
            flags & 2048 &&
            commitCachePassiveMountEffect(finishedWork.alternate, finishedWork);
          break;
        default:
          recursivelyTraverseReconnectPassiveEffects(
            finishedRoot,
            finishedWork,
            committedLanes,
            committedTransitions,
            includeWorkInProgressEffects,
            endTime
          );
      }
      (finishedWork.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
        logComponentEffect(
          finishedWork,
          componentEffectStartTime,
          componentEffectEndTime,
          componentEffectDuration,
          componentEffectErrors
        );
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectErrors = prevEffectErrors;
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
      alreadyWarnedForDeepEquality = prevDeepEquality;
    }
    function recursivelyTraverseAtomicPassiveEffects(
      finishedRoot$jscomp$0,
      parentFiber,
      committedLanes$jscomp$0,
      committedTransitions$jscomp$0,
      endTime$jscomp$0
    ) {
      if (
        parentFiber.subtreeFlags & 10256 ||
        (0 !== parentFiber.actualDuration &&
          (null === parentFiber.alternate ||
            parentFiber.alternate.child !== parentFiber.child))
      )
        for (var child = parentFiber.child; null !== child; ) {
          parentFiber = child.sibling;
          var finishedRoot = finishedRoot$jscomp$0,
            committedLanes = committedLanes$jscomp$0,
            committedTransitions = committedTransitions$jscomp$0,
            endTime =
              null !== parentFiber
                ? parentFiber.actualStartTime
                : endTime$jscomp$0,
            prevDeepEquality = alreadyWarnedForDeepEquality;
          (child.mode & ProfileMode) !== NoMode &&
            0 < child.actualStartTime &&
            0 !== (child.flags & 1) &&
            logComponentRender(
              child,
              child.actualStartTime,
              endTime,
              inHydratedSubtree,
              committedLanes
            );
          var flags = child.flags;
          switch (child.tag) {
            case 22:
              recursivelyTraverseAtomicPassiveEffects(
                finishedRoot,
                child,
                committedLanes,
                committedTransitions,
                endTime
              );
              flags & 2048 &&
                commitOffscreenPassiveMountEffects(child.alternate, child);
              break;
            case 24:
              recursivelyTraverseAtomicPassiveEffects(
                finishedRoot,
                child,
                committedLanes,
                committedTransitions,
                endTime
              );
              flags & 2048 &&
                commitCachePassiveMountEffect(child.alternate, child);
              break;
            default:
              recursivelyTraverseAtomicPassiveEffects(
                finishedRoot,
                child,
                committedLanes,
                committedTransitions,
                endTime
              );
          }
          alreadyWarnedForDeepEquality = prevDeepEquality;
          child = parentFiber;
        }
    }
    function recursivelyAccumulateSuspenseyCommit(
      parentFiber,
      committedLanes,
      suspendedState
    ) {
      if (parentFiber.subtreeFlags & suspenseyCommitFlag)
        for (parentFiber = parentFiber.child; null !== parentFiber; )
          accumulateSuspenseyCommitOnFiber(
            parentFiber,
            committedLanes,
            suspendedState
          ),
            (parentFiber = parentFiber.sibling);
    }
    function accumulateSuspenseyCommitOnFiber(
      fiber,
      committedLanes,
      suspendedState
    ) {
      switch (fiber.tag) {
        case 26:
          recursivelyAccumulateSuspenseyCommit(
            fiber,
            committedLanes,
            suspendedState
          );
          fiber.flags & suspenseyCommitFlag &&
            null !== fiber.memoizedState &&
            suspendResource(
              suspendedState,
              currentHoistableRoot,
              fiber.memoizedState,
              fiber.memoizedProps
            );
          break;
        case 5:
          recursivelyAccumulateSuspenseyCommit(
            fiber,
            committedLanes,
            suspendedState
          );
          break;
        case 3:
        case 4:
          var previousHoistableRoot = currentHoistableRoot;
          currentHoistableRoot = getHoistableRoot(
            fiber.stateNode.containerInfo
          );
          recursivelyAccumulateSuspenseyCommit(
            fiber,
            committedLanes,
            suspendedState
          );
          currentHoistableRoot = previousHoistableRoot;
          break;
        case 22:
          null === fiber.memoizedState &&
            ((previousHoistableRoot = fiber.alternate),
            null !== previousHoistableRoot &&
            null !== previousHoistableRoot.memoizedState
              ? ((previousHoistableRoot = suspenseyCommitFlag),
                (suspenseyCommitFlag = 16777216),
                recursivelyAccumulateSuspenseyCommit(
                  fiber,
                  committedLanes,
                  suspendedState
                ),
                (suspenseyCommitFlag = previousHoistableRoot))
              : recursivelyAccumulateSuspenseyCommit(
                  fiber,
                  committedLanes,
                  suspendedState
                ));
          break;
        default:
          recursivelyAccumulateSuspenseyCommit(
            fiber,
            committedLanes,
            suspendedState
          );
      }
    }
    function detachAlternateSiblings(parentFiber) {
      var previousFiber = parentFiber.alternate;
      if (
        null !== previousFiber &&
        ((parentFiber = previousFiber.child), null !== parentFiber)
      ) {
        previousFiber.child = null;
        do
          (previousFiber = parentFiber.sibling),
            (parentFiber.sibling = null),
            (parentFiber = previousFiber);
        while (null !== parentFiber);
      }
    }
    function recursivelyTraversePassiveUnmountEffects(parentFiber) {
      var deletions = parentFiber.deletions;
      if (0 !== (parentFiber.flags & 16)) {
        if (null !== deletions)
          for (var i = 0; i < deletions.length; i++) {
            var childToDelete = deletions[i],
              prevEffectStart = pushComponentEffectStart();
            nextEffect = childToDelete;
            commitPassiveUnmountEffectsInsideOfDeletedTree_begin(
              childToDelete,
              parentFiber
            );
            (childToDelete.mode & ProfileMode) !== NoMode &&
              0 <= componentEffectStartTime &&
              0 <= componentEffectEndTime &&
              0.05 < componentEffectEndTime - componentEffectStartTime &&
              logComponentTrigger(
                childToDelete,
                componentEffectStartTime,
                componentEffectEndTime,
                "Unmount"
              );
            popComponentEffectStart(prevEffectStart);
          }
        detachAlternateSiblings(parentFiber);
      }
      if (parentFiber.subtreeFlags & 10256)
        for (parentFiber = parentFiber.child; null !== parentFiber; )
          commitPassiveUnmountOnFiber(parentFiber),
            (parentFiber = parentFiber.sibling);
    }
    function commitPassiveUnmountOnFiber(finishedWork) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 15:
          recursivelyTraversePassiveUnmountEffects(finishedWork);
          finishedWork.flags & 2048 &&
            commitHookPassiveUnmountEffects(
              finishedWork,
              finishedWork.return,
              Passive | HasEffect
            );
          break;
        case 3:
          var prevProfilerEffectDuration = pushNestedEffectDurations();
          recursivelyTraversePassiveUnmountEffects(finishedWork);
          finishedWork.stateNode.passiveEffectDuration +=
            popNestedEffectDurations(prevProfilerEffectDuration);
          break;
        case 12:
          prevProfilerEffectDuration = pushNestedEffectDurations();
          recursivelyTraversePassiveUnmountEffects(finishedWork);
          finishedWork.stateNode.passiveEffectDuration +=
            bubbleNestedEffectDurations(prevProfilerEffectDuration);
          break;
        case 22:
          prevProfilerEffectDuration = finishedWork.stateNode;
          null !== finishedWork.memoizedState &&
          prevProfilerEffectDuration._visibility &
            OffscreenPassiveEffectsConnected &&
          (null === finishedWork.return || 13 !== finishedWork.return.tag)
            ? ((prevProfilerEffectDuration._visibility &=
                ~OffscreenPassiveEffectsConnected),
              recursivelyTraverseDisconnectPassiveEffects(finishedWork),
              (finishedWork.mode & ProfileMode) !== NoMode &&
                0 <= componentEffectStartTime &&
                0 <= componentEffectEndTime &&
                0.05 < componentEffectEndTime - componentEffectStartTime &&
                logComponentTrigger(
                  finishedWork,
                  componentEffectStartTime,
                  componentEffectEndTime,
                  "Disconnect"
                ))
            : recursivelyTraversePassiveUnmountEffects(finishedWork);
          break;
        default:
          recursivelyTraversePassiveUnmountEffects(finishedWork);
      }
      (finishedWork.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
        logComponentEffect(
          finishedWork,
          componentEffectStartTime,
          componentEffectEndTime,
          componentEffectDuration,
          componentEffectErrors
        );
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
      componentEffectErrors = prevEffectErrors;
    }
    function recursivelyTraverseDisconnectPassiveEffects(parentFiber) {
      var deletions = parentFiber.deletions;
      if (0 !== (parentFiber.flags & 16)) {
        if (null !== deletions)
          for (var i = 0; i < deletions.length; i++) {
            var childToDelete = deletions[i],
              prevEffectStart = pushComponentEffectStart();
            nextEffect = childToDelete;
            commitPassiveUnmountEffectsInsideOfDeletedTree_begin(
              childToDelete,
              parentFiber
            );
            (childToDelete.mode & ProfileMode) !== NoMode &&
              0 <= componentEffectStartTime &&
              0 <= componentEffectEndTime &&
              0.05 < componentEffectEndTime - componentEffectStartTime &&
              logComponentTrigger(
                childToDelete,
                componentEffectStartTime,
                componentEffectEndTime,
                "Unmount"
              );
            popComponentEffectStart(prevEffectStart);
          }
        detachAlternateSiblings(parentFiber);
      }
      for (parentFiber = parentFiber.child; null !== parentFiber; )
        disconnectPassiveEffect(parentFiber),
          (parentFiber = parentFiber.sibling);
    }
    function disconnectPassiveEffect(finishedWork) {
      var prevEffectStart = pushComponentEffectStart(),
        prevEffectDuration = pushComponentEffectDuration(),
        prevEffectErrors = pushComponentEffectErrors(),
        prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
      switch (finishedWork.tag) {
        case 0:
        case 11:
        case 15:
          commitHookPassiveUnmountEffects(
            finishedWork,
            finishedWork.return,
            Passive
          );
          recursivelyTraverseDisconnectPassiveEffects(finishedWork);
          break;
        case 22:
          var instance = finishedWork.stateNode;
          instance._visibility & OffscreenPassiveEffectsConnected &&
            ((instance._visibility &= ~OffscreenPassiveEffectsConnected),
            recursivelyTraverseDisconnectPassiveEffects(finishedWork));
          break;
        default:
          recursivelyTraverseDisconnectPassiveEffects(finishedWork);
      }
      (finishedWork.mode & ProfileMode) !== NoMode &&
        0 <= componentEffectStartTime &&
        0 <= componentEffectEndTime &&
        (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
        logComponentEffect(
          finishedWork,
          componentEffectStartTime,
          componentEffectEndTime,
          componentEffectDuration,
          componentEffectErrors
        );
      popComponentEffectStart(prevEffectStart);
      popComponentEffectDuration(prevEffectDuration);
      componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
      componentEffectErrors = prevEffectErrors;
    }
    function commitPassiveUnmountEffectsInsideOfDeletedTree_begin(
      deletedSubtreeRoot,
      nearestMountedAncestor$jscomp$0
    ) {
      for (; null !== nextEffect; ) {
        var fiber = nextEffect,
          current = fiber,
          nearestMountedAncestor = nearestMountedAncestor$jscomp$0,
          prevEffectStart = pushComponentEffectStart(),
          prevEffectDuration = pushComponentEffectDuration(),
          prevEffectErrors = pushComponentEffectErrors(),
          prevEffectDidSpawnUpdate = pushComponentEffectDidSpawnUpdate();
        switch (current.tag) {
          case 0:
          case 11:
          case 15:
            commitHookPassiveUnmountEffects(
              current,
              nearestMountedAncestor,
              Passive
            );
            break;
          case 23:
          case 22:
            null !== current.memoizedState &&
              null !== current.memoizedState.cachePool &&
              ((nearestMountedAncestor = current.memoizedState.cachePool.pool),
              null != nearestMountedAncestor &&
                retainCache(nearestMountedAncestor));
            break;
          case 24:
            releaseCache(current.memoizedState.cache);
        }
        (current.mode & ProfileMode) !== NoMode &&
          0 <= componentEffectStartTime &&
          0 <= componentEffectEndTime &&
          (componentEffectSpawnedUpdate || 0.05 < componentEffectDuration) &&
          logComponentEffect(
            current,
            componentEffectStartTime,
            componentEffectEndTime,
            componentEffectDuration,
            componentEffectErrors
          );
        popComponentEffectStart(prevEffectStart);
        popComponentEffectDuration(prevEffectDuration);
        componentEffectSpawnedUpdate = prevEffectDidSpawnUpdate;
        componentEffectErrors = prevEffectErrors;
        current = fiber.child;
        if (null !== current) (current.return = fiber), (nextEffect = current);
        else
          a: for (fiber = deletedSubtreeRoot; null !== nextEffect; ) {
            current = nextEffect;
            prevEffectStart = current.sibling;
            prevEffectDuration = current.return;
            detachFiberAfterEffects(current);
            if (current === fiber) {
              nextEffect = null;
              break a;
            }
            if (null !== prevEffectStart) {
              prevEffectStart.return = prevEffectDuration;
              nextEffect = prevEffectStart;
              break a;
            }
            nextEffect = prevEffectDuration;
          }
      }
    }
    function onCommitRoot() {
      commitHooks.forEach(function (commitHook) {
        return commitHook();
      });
    }
    function isConcurrentActEnvironment() {
      var isReactActEnvironmentGlobal =
        "undefined" !== typeof IS_REACT_ACT_ENVIRONMENT
          ? IS_REACT_ACT_ENVIRONMENT
          : void 0;
      isReactActEnvironmentGlobal ||
        null === ReactSharedInternals.actQueue ||
        console.error(
          "The current testing environment is not configured to support act(...)"
        );
      return isReactActEnvironmentGlobal;
    }
    function requestUpdateLane(fiber) {
      if (
        (executionContext & RenderContext) !== NoContext &&
        0 !== workInProgressRootRenderLanes
      )
        return workInProgressRootRenderLanes & -workInProgressRootRenderLanes;
      var transition = ReactSharedInternals.T;
      return null !== transition
        ? (transition._updatedFibers || (transition._updatedFibers = new Set()),
          transition._updatedFibers.add(fiber),
          requestTransitionLane())
        : resolveUpdatePriority();
    }
    function requestDeferredLane() {
      if (0 === workInProgressDeferredLane)
        if (0 === (workInProgressRootRenderLanes & 536870912) || isHydrating) {
          var lane = nextTransitionDeferredLane;
          nextTransitionDeferredLane <<= 1;
          0 === (nextTransitionDeferredLane & 3932160) &&
            (nextTransitionDeferredLane = 262144);
          workInProgressDeferredLane = lane;
        } else workInProgressDeferredLane = 536870912;
      lane = suspenseHandlerStackCursor.current;
      null !== lane && (lane.flags |= 32);
      return workInProgressDeferredLane;
    }
    function scheduleUpdateOnFiber(root, fiber, lane) {
      isRunningInsertionEffect &&
        console.error("useInsertionEffect must not schedule updates.");
      isFlushingPassiveEffects && (didScheduleUpdateDuringPassiveEffects = !0);
      if (
        (root === workInProgressRoot &&
          (workInProgressSuspendedReason === SuspendedOnData ||
            workInProgressSuspendedReason === SuspendedOnAction)) ||
        null !== root.cancelPendingCommit
      )
        prepareFreshStack(root, 0),
          markRootSuspended(
            root,
            workInProgressRootRenderLanes,
            workInProgressDeferredLane,
            !1
          );
      markRootUpdated$1(root, lane);
      if (
        (executionContext & RenderContext) !== NoContext &&
        root === workInProgressRoot
      ) {
        if (isRendering)
          switch (fiber.tag) {
            case 0:
            case 11:
            case 15:
              root =
                (workInProgress && getComponentNameFromFiber(workInProgress)) ||
                "Unknown";
              didWarnAboutUpdateInRenderForAnotherComponent.has(root) ||
                (didWarnAboutUpdateInRenderForAnotherComponent.add(root),
                (fiber = getComponentNameFromFiber(fiber) || "Unknown"),
                console.error(
                  "Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://react.dev/link/setstate-in-render",
                  fiber,
                  root,
                  root
                ));
              break;
            case 1:
              didWarnAboutUpdateInRender ||
                (console.error(
                  "Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state."
                ),
                (didWarnAboutUpdateInRender = !0));
          }
      } else
        isDevToolsPresent && addFiberToLanesMap(root, fiber, lane),
          warnIfUpdatesNotWrappedWithActDEV(fiber),
          root === workInProgressRoot &&
            ((executionContext & RenderContext) === NoContext &&
              (workInProgressRootInterleavedUpdatedLanes |= lane),
            workInProgressRootExitStatus === RootSuspendedWithDelay &&
              markRootSuspended(
                root,
                workInProgressRootRenderLanes,
                workInProgressDeferredLane,
                !1
              )),
          ensureRootIsScheduled(root);
    }
    function performWorkOnRoot(root, lanes, forceSync) {
      if ((executionContext & (RenderContext | CommitContext)) !== NoContext)
        throw Error("Should not already be working.");
      if (0 !== workInProgressRootRenderLanes && null !== workInProgress) {
        var yieldedFiber = workInProgress,
          yieldEndTime = now$1();
        switch (yieldReason) {
          case SuspendedOnImmediate:
          case SuspendedOnData:
            var startTime = yieldStartTime;
            supportsUserTiming &&
              ((yieldedFiber = yieldedFiber._debugTask)
                ? yieldedFiber.run(
                    console.timeStamp.bind(
                      console,
                      "Suspended",
                      startTime,
                      yieldEndTime,
                      COMPONENTS_TRACK,
                      void 0,
                      "primary-light"
                    )
                  )
                : console.timeStamp(
                    "Suspended",
                    startTime,
                    yieldEndTime,
                    COMPONENTS_TRACK,
                    void 0,
                    "primary-light"
                  ));
            break;
          case SuspendedOnAction:
            startTime = yieldStartTime;
            supportsUserTiming &&
              ((yieldedFiber = yieldedFiber._debugTask)
                ? yieldedFiber.run(
                    console.timeStamp.bind(
                      console,
                      "Action",
                      startTime,
                      yieldEndTime,
                      COMPONENTS_TRACK,
                      void 0,
                      "primary-light"
                    )
                  )
                : console.timeStamp(
                    "Action",
                    startTime,
                    yieldEndTime,
                    COMPONENTS_TRACK,
                    void 0,
                    "primary-light"
                  ));
            break;
          default:
            supportsUserTiming &&
              ((yieldedFiber = yieldEndTime - yieldStartTime),
              3 > yieldedFiber ||
                console.timeStamp(
                  "Blocked",
                  yieldStartTime,
                  yieldEndTime,
                  COMPONENTS_TRACK,
                  void 0,
                  5 > yieldedFiber
                    ? "primary-light"
                    : 10 > yieldedFiber
                      ? "primary"
                      : 100 > yieldedFiber
                        ? "primary-dark"
                        : "error"
                ));
        }
      }
      startTime = (forceSync =
        (!forceSync &&
          0 === (lanes & 127) &&
          0 === (lanes & root.expiredLanes)) ||
        checkIfRootIsPrerendering(root, lanes))
        ? renderRootConcurrent(root, lanes)
        : renderRootSync(root, lanes, !0);
      var renderWasConcurrent = forceSync;
      do {
        if (startTime === RootInProgress) {
          workInProgressRootIsPrerendering &&
            !forceSync &&
            markRootSuspended(root, lanes, 0, !1);
          lanes = workInProgressSuspendedReason;
          yieldStartTime = now();
          yieldReason = lanes;
          break;
        } else {
          yieldedFiber = now$1();
          yieldEndTime = root.current.alternate;
          if (
            renderWasConcurrent &&
            !isRenderConsistentWithExternalStores(yieldEndTime)
          ) {
            setCurrentTrackFromLanes(lanes);
            yieldEndTime = renderStartTime;
            startTime = yieldedFiber;
            !supportsUserTiming ||
              startTime <= yieldEndTime ||
              (workInProgressUpdateTask
                ? workInProgressUpdateTask.run(
                    console.timeStamp.bind(
                      console,
                      "Teared Render",
                      yieldEndTime,
                      startTime,
                      currentTrack,
                      LANES_TRACK_GROUP,
                      "error"
                    )
                  )
                : console.timeStamp(
                    "Teared Render",
                    yieldEndTime,
                    startTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    "error"
                  ));
            finalizeRender(lanes, yieldedFiber);
            startTime = renderRootSync(root, lanes, !1);
            renderWasConcurrent = !1;
            continue;
          }
          if (startTime === RootErrored) {
            renderWasConcurrent = lanes;
            if (root.errorRecoveryDisabledLanes & renderWasConcurrent)
              var errorRetryLanes = 0;
            else
              (errorRetryLanes = root.pendingLanes & -536870913),
                (errorRetryLanes =
                  0 !== errorRetryLanes
                    ? errorRetryLanes
                    : errorRetryLanes & 536870912
                      ? 536870912
                      : 0);
            if (0 !== errorRetryLanes) {
              setCurrentTrackFromLanes(lanes);
              logErroredRenderPhase(
                renderStartTime,
                yieldedFiber,
                lanes,
                workInProgressUpdateTask
              );
              finalizeRender(lanes, yieldedFiber);
              lanes = errorRetryLanes;
              a: {
                yieldedFiber = root;
                startTime = renderWasConcurrent;
                renderWasConcurrent = workInProgressRootConcurrentErrors;
                var wasRootDehydrated =
                  yieldedFiber.current.memoizedState.isDehydrated;
                wasRootDehydrated &&
                  (prepareFreshStack(yieldedFiber, errorRetryLanes).flags |=
                    256);
                errorRetryLanes = renderRootSync(
                  yieldedFiber,
                  errorRetryLanes,
                  !1
                );
                if (errorRetryLanes !== RootErrored) {
                  if (
                    workInProgressRootDidAttachPingListener &&
                    !wasRootDehydrated
                  ) {
                    yieldedFiber.errorRecoveryDisabledLanes |= startTime;
                    workInProgressRootInterleavedUpdatedLanes |= startTime;
                    startTime = RootSuspendedWithDelay;
                    break a;
                  }
                  yieldedFiber = workInProgressRootRecoverableErrors;
                  workInProgressRootRecoverableErrors = renderWasConcurrent;
                  null !== yieldedFiber &&
                    (null === workInProgressRootRecoverableErrors
                      ? (workInProgressRootRecoverableErrors = yieldedFiber)
                      : workInProgressRootRecoverableErrors.push.apply(
                          workInProgressRootRecoverableErrors,
                          yieldedFiber
                        ));
                }
                startTime = errorRetryLanes;
              }
              renderWasConcurrent = !1;
              if (startTime !== RootErrored) continue;
              else yieldedFiber = now$1();
            }
          }
          if (startTime === RootFatalErrored) {
            setCurrentTrackFromLanes(lanes);
            logErroredRenderPhase(
              renderStartTime,
              yieldedFiber,
              lanes,
              workInProgressUpdateTask
            );
            finalizeRender(lanes, yieldedFiber);
            prepareFreshStack(root, 0);
            markRootSuspended(root, lanes, 0, !0);
            break;
          }
          a: {
            forceSync = root;
            switch (startTime) {
              case RootInProgress:
              case RootFatalErrored:
                throw Error("Root did not complete. This is a bug in React.");
              case RootSuspendedWithDelay:
                if ((lanes & 4194048) !== lanes) break;
              case RootSuspendedAtTheShell:
                setCurrentTrackFromLanes(lanes);
                logSuspendedRenderPhase(
                  renderStartTime,
                  yieldedFiber,
                  lanes,
                  workInProgressUpdateTask
                );
                finalizeRender(lanes, yieldedFiber);
                yieldEndTime = lanes;
                0 !== (yieldEndTime & 127)
                  ? (blockingSuspendedTime = yieldedFiber)
                  : 0 !== (yieldEndTime & 4194048) &&
                    (transitionSuspendedTime = yieldedFiber);
                markRootSuspended(
                  forceSync,
                  lanes,
                  workInProgressDeferredLane,
                  !workInProgressRootDidSkipSuspendedSiblings
                );
                break a;
              case RootErrored:
                workInProgressRootRecoverableErrors = null;
                break;
              case RootSuspended:
              case RootCompleted:
                break;
              default:
                throw Error("Unknown root exit status.");
            }
            if (null !== ReactSharedInternals.actQueue)
              commitRoot(
                forceSync,
                yieldEndTime,
                lanes,
                workInProgressRootRecoverableErrors,
                workInProgressTransitions,
                workInProgressRootDidIncludeRecursiveRenderUpdate,
                workInProgressDeferredLane,
                workInProgressRootInterleavedUpdatedLanes,
                workInProgressSuspendedRetryLanes,
                startTime,
                null,
                null,
                renderStartTime,
                yieldedFiber
              );
            else {
              if (
                (lanes & 62914560) === lanes &&
                ((renderWasConcurrent =
                  globalMostRecentFallbackTime +
                  FALLBACK_THROTTLE_MS -
                  now$1()),
                10 < renderWasConcurrent)
              ) {
                markRootSuspended(
                  forceSync,
                  lanes,
                  workInProgressDeferredLane,
                  !workInProgressRootDidSkipSuspendedSiblings
                );
                if (0 !== getNextLanes(forceSync, 0, !0)) break a;
                pendingEffectsLanes = lanes;
                forceSync.timeoutHandle = scheduleTimeout(
                  commitRootWhenReady.bind(
                    null,
                    forceSync,
                    yieldEndTime,
                    workInProgressRootRecoverableErrors,
                    workInProgressTransitions,
                    workInProgressRootDidIncludeRecursiveRenderUpdate,
                    lanes,
                    workInProgressDeferredLane,
                    workInProgressRootInterleavedUpdatedLanes,
                    workInProgressSuspendedRetryLanes,
                    workInProgressRootDidSkipSuspendedSiblings,
                    startTime,
                    "Throttled",
                    renderStartTime,
                    yieldedFiber
                  ),
                  renderWasConcurrent
                );
                break a;
              }
              commitRootWhenReady(
                forceSync,
                yieldEndTime,
                workInProgressRootRecoverableErrors,
                workInProgressTransitions,
                workInProgressRootDidIncludeRecursiveRenderUpdate,
                lanes,
                workInProgressDeferredLane,
                workInProgressRootInterleavedUpdatedLanes,
                workInProgressSuspendedRetryLanes,
                workInProgressRootDidSkipSuspendedSiblings,
                startTime,
                null,
                renderStartTime,
                yieldedFiber
              );
            }
          }
        }
        break;
      } while (1);
      ensureRootIsScheduled(root);
    }
    function commitRootWhenReady(
      root,
      finishedWork,
      recoverableErrors,
      transitions,
      didIncludeRenderPhaseUpdate,
      lanes,
      spawnedLane,
      updatedLanes,
      suspendedRetryLanes,
      didSkipSuspendedSiblings,
      exitStatus,
      suspendedCommitReason,
      completedRenderStartTime,
      completedRenderEndTime
    ) {
      root.timeoutHandle = noTimeout;
      var subtreeFlags = finishedWork.subtreeFlags,
        suspendedState = null;
      if (subtreeFlags & 8192 || 16785408 === (subtreeFlags & 16785408))
        if (
          ((suspendedState = {
            stylesheets: null,
            count: 0,
            imgCount: 0,
            imgBytes: 0,
            suspenseyImages: [],
            waitingForImages: !0,
            waitingForViewTransition: !1,
            unsuspend: noop$1
          }),
          accumulateSuspenseyCommitOnFiber(finishedWork, lanes, suspendedState),
          (subtreeFlags =
            (lanes & 62914560) === lanes
              ? globalMostRecentFallbackTime - now$1()
              : (lanes & 4194048) === lanes
                ? globalMostRecentTransitionTime - now$1()
                : 0),
          (subtreeFlags = waitForCommitToBeReady(suspendedState, subtreeFlags)),
          null !== subtreeFlags)
        ) {
          pendingEffectsLanes = lanes;
          root.cancelPendingCommit = subtreeFlags(
            commitRoot.bind(
              null,
              root,
              finishedWork,
              lanes,
              recoverableErrors,
              transitions,
              didIncludeRenderPhaseUpdate,
              spawnedLane,
              updatedLanes,
              suspendedRetryLanes,
              exitStatus,
              suspendedState,
              suspendedState.waitingForViewTransition
                ? "Waiting for the previous Animation"
                : 0 < suspendedState.count
                  ? 0 < suspendedState.imgCount
                    ? "Suspended on CSS and Images"
                    : "Suspended on CSS"
                  : 1 === suspendedState.imgCount
                    ? "Suspended on an Image"
                    : 0 < suspendedState.imgCount
                      ? "Suspended on Images"
                      : null,
              completedRenderStartTime,
              completedRenderEndTime
            )
          );
          markRootSuspended(
            root,
            lanes,
            spawnedLane,
            !didSkipSuspendedSiblings
          );
          return;
        }
      commitRoot(
        root,
        finishedWork,
        lanes,
        recoverableErrors,
        transitions,
        didIncludeRenderPhaseUpdate,
        spawnedLane,
        updatedLanes,
        suspendedRetryLanes,
        exitStatus,
        suspendedState,
        suspendedCommitReason,
        completedRenderStartTime,
        completedRenderEndTime
      );
    }
    function isRenderConsistentWithExternalStores(finishedWork) {
      for (var node = finishedWork; ; ) {
        var tag = node.tag;
        if (
          (0 === tag || 11 === tag || 15 === tag) &&
          node.flags & 16384 &&
          ((tag = node.updateQueue),
          null !== tag && ((tag = tag.stores), null !== tag))
        )
          for (var i = 0; i < tag.length; i++) {
            var check = tag[i],
              getSnapshot = check.getSnapshot;
            check = check.value;
            try {
              if (!objectIs(getSnapshot(), check)) return !1;
            } catch (error) {
              return !1;
            }
          }
        tag = node.child;
        if (node.subtreeFlags & 16384 && null !== tag)
          (tag.return = node), (node = tag);
        else {
          if (node === finishedWork) break;
          for (; null === node.sibling; ) {
            if (null === node.return || node.return === finishedWork) return !0;
            node = node.return;
          }
          node.sibling.return = node.return;
          node = node.sibling;
        }
      }
      return !0;
    }
    function markRootSuspended(
      root,
      suspendedLanes,
      spawnedLane,
      didAttemptEntireTree
    ) {
      suspendedLanes &= ~workInProgressRootPingedLanes;
      suspendedLanes &= ~workInProgressRootInterleavedUpdatedLanes;
      root.suspendedLanes |= suspendedLanes;
      root.pingedLanes &= ~suspendedLanes;
      didAttemptEntireTree && (root.warmLanes |= suspendedLanes);
      didAttemptEntireTree = root.expirationTimes;
      for (var lanes = suspendedLanes; 0 < lanes; ) {
        var index = 31 - clz32(lanes),
          lane = 1 << index;
        didAttemptEntireTree[index] = -1;
        lanes &= ~lane;
      }
      0 !== spawnedLane &&
        markSpawnedDeferredLane(root, spawnedLane, suspendedLanes);
    }
    function flushSyncWork$1() {
      return (executionContext & (RenderContext | CommitContext)) === NoContext
        ? (flushSyncWorkAcrossRoots_impl(0, !1), !1)
        : !0;
    }
    function resetWorkInProgressStack() {
      if (null !== workInProgress) {
        if (workInProgressSuspendedReason === NotSuspended)
          var interruptedWork = workInProgress.return;
        else
          (interruptedWork = workInProgress),
            resetContextDependencies(),
            resetHooksOnUnwind(interruptedWork),
            (thenableState$1 = null),
            (thenableIndexCounter$1 = 0),
            (interruptedWork = workInProgress);
        for (; null !== interruptedWork; )
          unwindInterruptedWork(interruptedWork.alternate, interruptedWork),
            (interruptedWork = interruptedWork.return);
        workInProgress = null;
      }
    }
    function finalizeRender(lanes, finalizationTime) {
      0 !== (lanes & 127) && (blockingClampTime = finalizationTime);
      0 !== (lanes & 4194048) && (transitionClampTime = finalizationTime);
      0 !== (lanes & 62914560) && (retryClampTime = finalizationTime);
      0 !== (lanes & 2080374784) && (idleClampTime = finalizationTime);
    }
    function prepareFreshStack(root, lanes) {
      supportsUserTiming &&
        (console.timeStamp(
          "Blocking Track",
          0.003,
          0.003,
          "Blocking",
          LANES_TRACK_GROUP,
          "primary-light"
        ),
        console.timeStamp(
          "Transition Track",
          0.003,
          0.003,
          "Transition",
          LANES_TRACK_GROUP,
          "primary-light"
        ),
        console.timeStamp(
          "Suspense Track",
          0.003,
          0.003,
          "Suspense",
          LANES_TRACK_GROUP,
          "primary-light"
        ),
        console.timeStamp(
          "Idle Track",
          0.003,
          0.003,
          "Idle",
          LANES_TRACK_GROUP,
          "primary-light"
        ));
      var previousRenderStartTime = renderStartTime;
      renderStartTime = now();
      if (0 !== workInProgressRootRenderLanes && 0 < previousRenderStartTime) {
        setCurrentTrackFromLanes(workInProgressRootRenderLanes);
        if (
          workInProgressRootExitStatus === RootSuspended ||
          workInProgressRootExitStatus === RootSuspendedWithDelay
        )
          logSuspendedRenderPhase(
            previousRenderStartTime,
            renderStartTime,
            lanes,
            workInProgressUpdateTask
          );
        else {
          var endTime = renderStartTime,
            debugTask = workInProgressUpdateTask;
          if (supportsUserTiming && !(endTime <= previousRenderStartTime)) {
            var color =
                (lanes & 738197653) === lanes
                  ? "tertiary-dark"
                  : "primary-dark",
              label =
                (lanes & 536870912) === lanes
                  ? "Prewarm"
                  : (lanes & 201326741) === lanes
                    ? "Interrupted Hydration"
                    : "Interrupted Render";
            debugTask
              ? debugTask.run(
                  console.timeStamp.bind(
                    console,
                    label,
                    previousRenderStartTime,
                    endTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    color
                  )
                )
              : console.timeStamp(
                  label,
                  previousRenderStartTime,
                  endTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  color
                );
          }
        }
        finalizeRender(workInProgressRootRenderLanes, renderStartTime);
      }
      previousRenderStartTime = workInProgressUpdateTask;
      workInProgressUpdateTask = null;
      if (0 !== (lanes & 127)) {
        workInProgressUpdateTask = blockingUpdateTask;
        debugTask =
          0 <= blockingUpdateTime && blockingUpdateTime < blockingClampTime
            ? blockingClampTime
            : blockingUpdateTime;
        endTime =
          0 <= blockingEventTime && blockingEventTime < blockingClampTime
            ? blockingClampTime
            : blockingEventTime;
        color =
          0 <= endTime ? endTime : 0 <= debugTask ? debugTask : renderStartTime;
        0 <= blockingSuspendedTime
          ? (setCurrentTrackFromLanes(2),
            logSuspendedWithDelayPhase(
              blockingSuspendedTime,
              color,
              lanes,
              previousRenderStartTime
            ))
          : 0 !== (animatingLanes & 127) &&
            (setCurrentTrackFromLanes(2),
            logAnimatingPhase(blockingClampTime, color, animatingTask));
        previousRenderStartTime = debugTask;
        var eventTime = endTime,
          eventType = blockingEventType,
          eventIsRepeat = 0 < blockingEventRepeatTime,
          isSpawnedUpdate = blockingUpdateType === SPAWNED_UPDATE,
          isPingedUpdate = blockingUpdateType === PINGED_UPDATE;
        debugTask = renderStartTime;
        endTime = blockingUpdateTask;
        color = blockingUpdateMethodName;
        label = blockingUpdateComponentName;
        if (supportsUserTiming) {
          currentTrack = "Blocking";
          0 < previousRenderStartTime
            ? previousRenderStartTime > debugTask &&
              (previousRenderStartTime = debugTask)
            : (previousRenderStartTime = debugTask);
          0 < eventTime
            ? eventTime > previousRenderStartTime &&
              (eventTime = previousRenderStartTime)
            : (eventTime = previousRenderStartTime);
          if (null !== eventType && previousRenderStartTime > eventTime) {
            var color$jscomp$0 = eventIsRepeat ? "secondary-light" : "warning";
            endTime
              ? endTime.run(
                  console.timeStamp.bind(
                    console,
                    eventIsRepeat ? "Consecutive" : "Event: " + eventType,
                    eventTime,
                    previousRenderStartTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    color$jscomp$0
                  )
                )
              : console.timeStamp(
                  eventIsRepeat ? "Consecutive" : "Event: " + eventType,
                  eventTime,
                  previousRenderStartTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  color$jscomp$0
                );
          }
          debugTask > previousRenderStartTime &&
            ((eventTime = isSpawnedUpdate
              ? "error"
              : (lanes & 738197653) === lanes
                ? "tertiary-light"
                : "primary-light"),
            (isSpawnedUpdate = isPingedUpdate
              ? "Promise Resolved"
              : isSpawnedUpdate
                ? "Cascading Update"
                : 5 < debugTask - previousRenderStartTime
                  ? "Update Blocked"
                  : "Update"),
            (isPingedUpdate = []),
            null != label && isPingedUpdate.push(["Component name", label]),
            null != color && isPingedUpdate.push(["Method name", color]),
            (previousRenderStartTime = {
              start: previousRenderStartTime,
              end: debugTask,
              detail: {
                devtools: {
                  properties: isPingedUpdate,
                  track: currentTrack,
                  trackGroup: LANES_TRACK_GROUP,
                  color: eventTime
                }
              }
            }),
            endTime
              ? endTime.run(
                  performance.measure.bind(
                    performance,
                    isSpawnedUpdate,
                    previousRenderStartTime
                  )
                )
              : performance.measure(isSpawnedUpdate, previousRenderStartTime));
        }
        blockingUpdateTime = -1.1;
        blockingUpdateType = 0;
        blockingUpdateComponentName = blockingUpdateMethodName = null;
        blockingSuspendedTime = -1.1;
        blockingEventRepeatTime = blockingEventTime;
        blockingEventTime = -1.1;
        blockingClampTime = now();
      }
      0 !== (lanes & 4194048) &&
        ((workInProgressUpdateTask = transitionUpdateTask),
        (debugTask =
          0 <= transitionStartTime && transitionStartTime < transitionClampTime
            ? transitionClampTime
            : transitionStartTime),
        (previousRenderStartTime =
          0 <= transitionUpdateTime &&
          transitionUpdateTime < transitionClampTime
            ? transitionClampTime
            : transitionUpdateTime),
        (endTime =
          0 <= transitionEventTime && transitionEventTime < transitionClampTime
            ? transitionClampTime
            : transitionEventTime),
        (color =
          0 <= endTime
            ? endTime
            : 0 <= previousRenderStartTime
              ? previousRenderStartTime
              : renderStartTime),
        0 <= transitionSuspendedTime
          ? (setCurrentTrackFromLanes(256),
            logSuspendedWithDelayPhase(
              transitionSuspendedTime,
              color,
              lanes,
              workInProgressUpdateTask
            ))
          : 0 !== (animatingLanes & 4194048) &&
            (setCurrentTrackFromLanes(256),
            logAnimatingPhase(transitionClampTime, color, animatingTask)),
        (isPingedUpdate = endTime),
        (eventTime = transitionEventType),
        (eventType = 0 < transitionEventRepeatTime),
        (eventIsRepeat = transitionUpdateType === PINGED_UPDATE),
        (color = renderStartTime),
        (endTime = transitionUpdateTask),
        (label = transitionUpdateMethodName),
        (isSpawnedUpdate = transitionUpdateComponentName),
        supportsUserTiming &&
          ((currentTrack = "Transition"),
          0 < previousRenderStartTime
            ? previousRenderStartTime > color &&
              (previousRenderStartTime = color)
            : (previousRenderStartTime = color),
          0 < debugTask
            ? debugTask > previousRenderStartTime &&
              (debugTask = previousRenderStartTime)
            : (debugTask = previousRenderStartTime),
          0 < isPingedUpdate
            ? isPingedUpdate > debugTask && (isPingedUpdate = debugTask)
            : (isPingedUpdate = debugTask),
          debugTask > isPingedUpdate &&
            null !== eventTime &&
            ((color$jscomp$0 = eventType ? "secondary-light" : "warning"),
            endTime
              ? endTime.run(
                  console.timeStamp.bind(
                    console,
                    eventType ? "Consecutive" : "Event: " + eventTime,
                    isPingedUpdate,
                    debugTask,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    color$jscomp$0
                  )
                )
              : console.timeStamp(
                  eventType ? "Consecutive" : "Event: " + eventTime,
                  isPingedUpdate,
                  debugTask,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  color$jscomp$0
                )),
          previousRenderStartTime > debugTask &&
            (endTime
              ? endTime.run(
                  console.timeStamp.bind(
                    console,
                    "Action",
                    debugTask,
                    previousRenderStartTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    "primary-dark"
                  )
                )
              : console.timeStamp(
                  "Action",
                  debugTask,
                  previousRenderStartTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  "primary-dark"
                )),
          color > previousRenderStartTime &&
            ((debugTask = eventIsRepeat
              ? "Promise Resolved"
              : 5 < color - previousRenderStartTime
                ? "Update Blocked"
                : "Update"),
            (isPingedUpdate = []),
            null != isSpawnedUpdate &&
              isPingedUpdate.push(["Component name", isSpawnedUpdate]),
            null != label && isPingedUpdate.push(["Method name", label]),
            (previousRenderStartTime = {
              start: previousRenderStartTime,
              end: color,
              detail: {
                devtools: {
                  properties: isPingedUpdate,
                  track: currentTrack,
                  trackGroup: LANES_TRACK_GROUP,
                  color: "primary-light"
                }
              }
            }),
            endTime
              ? endTime.run(
                  performance.measure.bind(
                    performance,
                    debugTask,
                    previousRenderStartTime
                  )
                )
              : performance.measure(debugTask, previousRenderStartTime))),
        (transitionUpdateTime = transitionStartTime = -1.1),
        (transitionUpdateType = 0),
        (transitionSuspendedTime = -1.1),
        (transitionEventRepeatTime = transitionEventTime),
        (transitionEventTime = -1.1),
        (transitionClampTime = now()));
      0 !== (lanes & 62914560) &&
        0 !== (animatingLanes & 62914560) &&
        (setCurrentTrackFromLanes(4194304),
        logAnimatingPhase(retryClampTime, renderStartTime, animatingTask));
      0 !== (lanes & 2080374784) &&
        0 !== (animatingLanes & 2080374784) &&
        (setCurrentTrackFromLanes(268435456),
        logAnimatingPhase(idleClampTime, renderStartTime, animatingTask));
      previousRenderStartTime = root.timeoutHandle;
      previousRenderStartTime !== noTimeout &&
        ((root.timeoutHandle = noTimeout),
        cancelTimeout(previousRenderStartTime));
      previousRenderStartTime = root.cancelPendingCommit;
      null !== previousRenderStartTime &&
        ((root.cancelPendingCommit = null), previousRenderStartTime());
      pendingEffectsLanes = 0;
      resetWorkInProgressStack();
      workInProgressRoot = root;
      workInProgress = previousRenderStartTime = createWorkInProgress(
        root.current,
        null
      );
      workInProgressRootRenderLanes = lanes;
      workInProgressSuspendedReason = NotSuspended;
      workInProgressThrownValue = null;
      workInProgressRootDidSkipSuspendedSiblings = !1;
      workInProgressRootIsPrerendering = checkIfRootIsPrerendering(root, lanes);
      workInProgressRootDidAttachPingListener = !1;
      workInProgressRootExitStatus = RootInProgress;
      workInProgressSuspendedRetryLanes =
        workInProgressDeferredLane =
        workInProgressRootPingedLanes =
        workInProgressRootInterleavedUpdatedLanes =
        workInProgressRootSkippedLanes =
          0;
      workInProgressRootRecoverableErrors = workInProgressRootConcurrentErrors =
        null;
      workInProgressRootDidIncludeRecursiveRenderUpdate = !1;
      0 !== (lanes & 8) && (lanes |= lanes & 32);
      endTime = root.entangledLanes;
      if (0 !== endTime)
        for (root = root.entanglements, endTime &= lanes; 0 < endTime; )
          (debugTask = 31 - clz32(endTime)),
            (color = 1 << debugTask),
            (lanes |= root[debugTask]),
            (endTime &= ~color);
      entangledRenderLanes = lanes;
      finishQueueingConcurrentUpdates();
      root = getCurrentTime();
      1e3 < root - lastResetTime &&
        ((ReactSharedInternals.recentlyCreatedOwnerStacks = 0),
        (lastResetTime = root));
      ReactStrictModeWarnings.discardPendingWarnings();
      return previousRenderStartTime;
    }
    function handleThrow(root, thrownValue) {
      currentlyRenderingFiber = null;
      ReactSharedInternals.H = ContextOnlyDispatcher;
      ReactSharedInternals.getCurrentStack = null;
      isRendering = !1;
      current = null;
      thrownValue === SuspenseException ||
      thrownValue === SuspenseActionException
        ? ((thrownValue = getSuspendedThenable()),
          (workInProgressSuspendedReason = SuspendedOnImmediate))
        : thrownValue === SuspenseyCommitException
          ? ((thrownValue = getSuspendedThenable()),
            (workInProgressSuspendedReason = SuspendedOnInstance))
          : (workInProgressSuspendedReason =
              thrownValue === SelectiveHydrationException
                ? SuspendedOnHydration
                : null !== thrownValue &&
                    "object" === typeof thrownValue &&
                    "function" === typeof thrownValue.then
                  ? SuspendedOnDeprecatedThrowPromise
                  : SuspendedOnError);
      workInProgressThrownValue = thrownValue;
      var erroredWork = workInProgress;
      null === erroredWork
        ? ((workInProgressRootExitStatus = RootFatalErrored),
          logUncaughtError(
            root,
            createCapturedValueAtFiber(thrownValue, root.current)
          ))
        : erroredWork.mode & ProfileMode &&
          stopProfilerTimerIfRunningAndRecordDuration(erroredWork);
    }
    function shouldRemainOnPreviousScreen() {
      var handler = suspenseHandlerStackCursor.current;
      return null === handler
        ? !0
        : (workInProgressRootRenderLanes & 4194048) ===
            workInProgressRootRenderLanes
          ? null === shellBoundary
            ? !0
            : !1
          : (workInProgressRootRenderLanes & 62914560) ===
                workInProgressRootRenderLanes ||
              0 !== (workInProgressRootRenderLanes & 536870912)
            ? handler === shellBoundary
            : !1;
    }
    function pushDispatcher() {
      var prevDispatcher = ReactSharedInternals.H;
      ReactSharedInternals.H = ContextOnlyDispatcher;
      return null === prevDispatcher ? ContextOnlyDispatcher : prevDispatcher;
    }
    function pushAsyncDispatcher() {
      var prevAsyncDispatcher = ReactSharedInternals.A;
      ReactSharedInternals.A = DefaultAsyncDispatcher;
      return prevAsyncDispatcher;
    }
    function markRenderDerivedCause(fiber) {
      null === workInProgressUpdateTask &&
        (workInProgressUpdateTask =
          null == fiber._debugTask ? null : fiber._debugTask);
    }
    function renderDidSuspendDelayIfPossible() {
      workInProgressRootExitStatus = RootSuspendedWithDelay;
      workInProgressRootDidSkipSuspendedSiblings ||
        ((workInProgressRootRenderLanes & 4194048) !==
          workInProgressRootRenderLanes &&
          null !== suspenseHandlerStackCursor.current) ||
        (workInProgressRootIsPrerendering = !0);
      (0 === (workInProgressRootSkippedLanes & 134217727) &&
        0 === (workInProgressRootInterleavedUpdatedLanes & 134217727)) ||
        null === workInProgressRoot ||
        markRootSuspended(
          workInProgressRoot,
          workInProgressRootRenderLanes,
          workInProgressDeferredLane,
          !1
        );
    }
    function renderRootSync(root, lanes, shouldYieldForPrerendering) {
      var prevExecutionContext = executionContext;
      executionContext |= RenderContext;
      var prevDispatcher = pushDispatcher(),
        prevAsyncDispatcher = pushAsyncDispatcher();
      if (
        workInProgressRoot !== root ||
        workInProgressRootRenderLanes !== lanes
      ) {
        if (isDevToolsPresent) {
          var memoizedUpdaters = root.memoizedUpdaters;
          0 < memoizedUpdaters.size &&
            (restorePendingUpdaters(root, workInProgressRootRenderLanes),
            memoizedUpdaters.clear());
          movePendingFibersToMemoized(root, lanes);
        }
        workInProgressTransitions = null;
        prepareFreshStack(root, lanes);
      }
      lanes = !1;
      memoizedUpdaters = workInProgressRootExitStatus;
      a: do
        try {
          if (
            workInProgressSuspendedReason !== NotSuspended &&
            null !== workInProgress
          ) {
            var unitOfWork = workInProgress,
              thrownValue = workInProgressThrownValue;
            switch (workInProgressSuspendedReason) {
              case SuspendedOnHydration:
                resetWorkInProgressStack();
                memoizedUpdaters = RootSuspendedAtTheShell;
                break a;
              case SuspendedOnImmediate:
              case SuspendedOnData:
              case SuspendedOnAction:
              case SuspendedOnDeprecatedThrowPromise:
                null === suspenseHandlerStackCursor.current && (lanes = !0);
                var reason = workInProgressSuspendedReason;
                workInProgressSuspendedReason = NotSuspended;
                workInProgressThrownValue = null;
                throwAndUnwindWorkLoop(root, unitOfWork, thrownValue, reason);
                if (
                  shouldYieldForPrerendering &&
                  workInProgressRootIsPrerendering
                ) {
                  memoizedUpdaters = RootInProgress;
                  break a;
                }
                break;
              default:
                (reason = workInProgressSuspendedReason),
                  (workInProgressSuspendedReason = NotSuspended),
                  (workInProgressThrownValue = null),
                  throwAndUnwindWorkLoop(root, unitOfWork, thrownValue, reason);
            }
          }
          workLoopSync();
          memoizedUpdaters = workInProgressRootExitStatus;
          break;
        } catch (thrownValue$8) {
          handleThrow(root, thrownValue$8);
        }
      while (1);
      lanes && root.shellSuspendCounter++;
      resetContextDependencies();
      executionContext = prevExecutionContext;
      ReactSharedInternals.H = prevDispatcher;
      ReactSharedInternals.A = prevAsyncDispatcher;
      null === workInProgress &&
        ((workInProgressRoot = null),
        (workInProgressRootRenderLanes = 0),
        finishQueueingConcurrentUpdates());
      return memoizedUpdaters;
    }
    function workLoopSync() {
      for (; null !== workInProgress; ) performUnitOfWork(workInProgress);
    }
    function renderRootConcurrent(root, lanes) {
      var prevExecutionContext = executionContext;
      executionContext |= RenderContext;
      var prevDispatcher = pushDispatcher(),
        prevAsyncDispatcher = pushAsyncDispatcher();
      if (
        workInProgressRoot !== root ||
        workInProgressRootRenderLanes !== lanes
      ) {
        if (isDevToolsPresent) {
          var memoizedUpdaters = root.memoizedUpdaters;
          0 < memoizedUpdaters.size &&
            (restorePendingUpdaters(root, workInProgressRootRenderLanes),
            memoizedUpdaters.clear());
          movePendingFibersToMemoized(root, lanes);
        }
        workInProgressTransitions = null;
        workInProgressRootRenderTargetTime = now$1() + RENDER_TIMEOUT_MS;
        prepareFreshStack(root, lanes);
      } else
        workInProgressRootIsPrerendering = checkIfRootIsPrerendering(
          root,
          lanes
        );
      a: do
        try {
          if (
            workInProgressSuspendedReason !== NotSuspended &&
            null !== workInProgress
          )
            b: switch (
              ((lanes = workInProgress),
              (memoizedUpdaters = workInProgressThrownValue),
              workInProgressSuspendedReason)
            ) {
              case SuspendedOnError:
                workInProgressSuspendedReason = NotSuspended;
                workInProgressThrownValue = null;
                throwAndUnwindWorkLoop(
                  root,
                  lanes,
                  memoizedUpdaters,
                  SuspendedOnError
                );
                break;
              case SuspendedOnData:
              case SuspendedOnAction:
                if (isThenableResolved(memoizedUpdaters)) {
                  workInProgressSuspendedReason = NotSuspended;
                  workInProgressThrownValue = null;
                  replaySuspendedUnitOfWork(lanes);
                  break;
                }
                lanes = function () {
                  (workInProgressSuspendedReason !== SuspendedOnData &&
                    workInProgressSuspendedReason !== SuspendedOnAction) ||
                    workInProgressRoot !== root ||
                    (workInProgressSuspendedReason =
                      SuspendedAndReadyToContinue);
                  ensureRootIsScheduled(root);
                };
                memoizedUpdaters.then(lanes, lanes);
                break a;
              case SuspendedOnImmediate:
                workInProgressSuspendedReason = SuspendedAndReadyToContinue;
                break a;
              case SuspendedOnInstance:
                workInProgressSuspendedReason =
                  SuspendedOnInstanceAndReadyToContinue;
                break a;
              case SuspendedAndReadyToContinue:
                isThenableResolved(memoizedUpdaters)
                  ? ((workInProgressSuspendedReason = NotSuspended),
                    (workInProgressThrownValue = null),
                    replaySuspendedUnitOfWork(lanes))
                  : ((workInProgressSuspendedReason = NotSuspended),
                    (workInProgressThrownValue = null),
                    throwAndUnwindWorkLoop(
                      root,
                      lanes,
                      memoizedUpdaters,
                      SuspendedAndReadyToContinue
                    ));
                break;
              case SuspendedOnInstanceAndReadyToContinue:
                var resource = null;
                switch (workInProgress.tag) {
                  case 26:
                    resource = workInProgress.memoizedState;
                  case 5:
                  case 27:
                    var hostFiber = workInProgress;
                    if (
                      resource
                        ? preloadResource(resource)
                        : hostFiber.stateNode.complete
                    ) {
                      workInProgressSuspendedReason = NotSuspended;
                      workInProgressThrownValue = null;
                      var sibling = hostFiber.sibling;
                      if (null !== sibling) workInProgress = sibling;
                      else {
                        var returnFiber = hostFiber.return;
                        null !== returnFiber
                          ? ((workInProgress = returnFiber),
                            completeUnitOfWork(returnFiber))
                          : (workInProgress = null);
                      }
                      break b;
                    }
                    break;
                  default:
                    console.error(
                      "Unexpected type of fiber triggered a suspensey commit. This is a bug in React."
                    );
                }
                workInProgressSuspendedReason = NotSuspended;
                workInProgressThrownValue = null;
                throwAndUnwindWorkLoop(
                  root,
                  lanes,
                  memoizedUpdaters,
                  SuspendedOnInstanceAndReadyToContinue
                );
                break;
              case SuspendedOnDeprecatedThrowPromise:
                workInProgressSuspendedReason = NotSuspended;
                workInProgressThrownValue = null;
                throwAndUnwindWorkLoop(
                  root,
                  lanes,
                  memoizedUpdaters,
                  SuspendedOnDeprecatedThrowPromise
                );
                break;
              case SuspendedOnHydration:
                resetWorkInProgressStack();
                workInProgressRootExitStatus = RootSuspendedAtTheShell;
                break a;
              default:
                throw Error(
                  "Unexpected SuspendedReason. This is a bug in React."
                );
            }
          null !== ReactSharedInternals.actQueue
            ? workLoopSync()
            : workLoopConcurrentByScheduler();
          break;
        } catch (thrownValue$9) {
          handleThrow(root, thrownValue$9);
        }
      while (1);
      resetContextDependencies();
      ReactSharedInternals.H = prevDispatcher;
      ReactSharedInternals.A = prevAsyncDispatcher;
      executionContext = prevExecutionContext;
      if (null !== workInProgress) return RootInProgress;
      workInProgressRoot = null;
      workInProgressRootRenderLanes = 0;
      finishQueueingConcurrentUpdates();
      return workInProgressRootExitStatus;
    }
    function workLoopConcurrentByScheduler() {
      for (; null !== workInProgress && !shouldYield(); )
        performUnitOfWork(workInProgress);
    }
    function performUnitOfWork(unitOfWork) {
      var current = unitOfWork.alternate;
      (unitOfWork.mode & ProfileMode) !== NoMode
        ? (startProfilerTimer(unitOfWork),
          (current = runWithFiberInDEV(
            unitOfWork,
            beginWork,
            current,
            unitOfWork,
            entangledRenderLanes
          )),
          stopProfilerTimerIfRunningAndRecordDuration(unitOfWork))
        : (current = runWithFiberInDEV(
            unitOfWork,
            beginWork,
            current,
            unitOfWork,
            entangledRenderLanes
          ));
      unitOfWork.memoizedProps = unitOfWork.pendingProps;
      null === current
        ? completeUnitOfWork(unitOfWork)
        : (workInProgress = current);
    }
    function replaySuspendedUnitOfWork(unitOfWork) {
      var next = runWithFiberInDEV(unitOfWork, replayBeginWork, unitOfWork);
      unitOfWork.memoizedProps = unitOfWork.pendingProps;
      null === next ? completeUnitOfWork(unitOfWork) : (workInProgress = next);
    }
    function replayBeginWork(unitOfWork) {
      var current = unitOfWork.alternate,
        isProfilingMode = (unitOfWork.mode & ProfileMode) !== NoMode;
      isProfilingMode && startProfilerTimer(unitOfWork);
      switch (unitOfWork.tag) {
        case 15:
        case 0:
          current = replayFunctionComponent(
            current,
            unitOfWork,
            unitOfWork.pendingProps,
            unitOfWork.type,
            void 0,
            workInProgressRootRenderLanes
          );
          break;
        case 11:
          current = replayFunctionComponent(
            current,
            unitOfWork,
            unitOfWork.pendingProps,
            unitOfWork.type.render,
            unitOfWork.ref,
            workInProgressRootRenderLanes
          );
          break;
        case 5:
          resetHooksOnUnwind(unitOfWork);
        default:
          unwindInterruptedWork(current, unitOfWork),
            (unitOfWork = workInProgress =
              resetWorkInProgress(unitOfWork, entangledRenderLanes)),
            (current = beginWork(current, unitOfWork, entangledRenderLanes));
      }
      isProfilingMode &&
        stopProfilerTimerIfRunningAndRecordDuration(unitOfWork);
      return current;
    }
    function throwAndUnwindWorkLoop(
      root,
      unitOfWork,
      thrownValue,
      suspendedReason
    ) {
      resetContextDependencies();
      resetHooksOnUnwind(unitOfWork);
      thenableState$1 = null;
      thenableIndexCounter$1 = 0;
      var returnFiber = unitOfWork.return;
      try {
        if (
          throwException(
            root,
            returnFiber,
            unitOfWork,
            thrownValue,
            workInProgressRootRenderLanes
          )
        ) {
          workInProgressRootExitStatus = RootFatalErrored;
          logUncaughtError(
            root,
            createCapturedValueAtFiber(thrownValue, root.current)
          );
          workInProgress = null;
          return;
        }
      } catch (error) {
        if (null !== returnFiber) throw ((workInProgress = returnFiber), error);
        workInProgressRootExitStatus = RootFatalErrored;
        logUncaughtError(
          root,
          createCapturedValueAtFiber(thrownValue, root.current)
        );
        workInProgress = null;
        return;
      }
      if (unitOfWork.flags & 32768) {
        if (isHydrating || suspendedReason === SuspendedOnError) root = !0;
        else if (
          workInProgressRootIsPrerendering ||
          0 !== (workInProgressRootRenderLanes & 536870912)
        )
          root = !1;
        else if (
          ((workInProgressRootDidSkipSuspendedSiblings = root = !0),
          suspendedReason === SuspendedOnData ||
            suspendedReason === SuspendedOnAction ||
            suspendedReason === SuspendedOnImmediate ||
            suspendedReason === SuspendedOnDeprecatedThrowPromise)
        )
          (suspendedReason = suspenseHandlerStackCursor.current),
            null !== suspendedReason &&
              13 === suspendedReason.tag &&
              (suspendedReason.flags |= 16384);
        unwindUnitOfWork(unitOfWork, root);
      } else completeUnitOfWork(unitOfWork);
    }
    function completeUnitOfWork(unitOfWork) {
      var completedWork = unitOfWork;
      do {
        if (0 !== (completedWork.flags & 32768)) {
          unwindUnitOfWork(
            completedWork,
            workInProgressRootDidSkipSuspendedSiblings
          );
          return;
        }
        var current = completedWork.alternate;
        unitOfWork = completedWork.return;
        startProfilerTimer(completedWork);
        current = runWithFiberInDEV(
          completedWork,
          completeWork,
          current,
          completedWork,
          entangledRenderLanes
        );
        (completedWork.mode & ProfileMode) !== NoMode &&
          stopProfilerTimerIfRunningAndRecordIncompleteDuration(completedWork);
        if (null !== current) {
          workInProgress = current;
          return;
        }
        completedWork = completedWork.sibling;
        if (null !== completedWork) {
          workInProgress = completedWork;
          return;
        }
        workInProgress = completedWork = unitOfWork;
      } while (null !== completedWork);
      workInProgressRootExitStatus === RootInProgress &&
        (workInProgressRootExitStatus = RootCompleted);
    }
    function unwindUnitOfWork(unitOfWork, skipSiblings) {
      do {
        var next = unwindWork(unitOfWork.alternate, unitOfWork);
        if (null !== next) {
          next.flags &= 32767;
          workInProgress = next;
          return;
        }
        if ((unitOfWork.mode & ProfileMode) !== NoMode) {
          stopProfilerTimerIfRunningAndRecordIncompleteDuration(unitOfWork);
          next = unitOfWork.actualDuration;
          for (var child = unitOfWork.child; null !== child; )
            (next += child.actualDuration), (child = child.sibling);
          unitOfWork.actualDuration = next;
        }
        next = unitOfWork.return;
        null !== next &&
          ((next.flags |= 32768),
          (next.subtreeFlags = 0),
          (next.deletions = null));
        if (
          !skipSiblings &&
          ((unitOfWork = unitOfWork.sibling), null !== unitOfWork)
        ) {
          workInProgress = unitOfWork;
          return;
        }
        workInProgress = unitOfWork = next;
      } while (null !== unitOfWork);
      workInProgressRootExitStatus = RootSuspendedAtTheShell;
      workInProgress = null;
    }
    function commitRoot(
      root,
      finishedWork,
      lanes,
      recoverableErrors,
      transitions,
      didIncludeRenderPhaseUpdate,
      spawnedLane,
      updatedLanes,
      suspendedRetryLanes,
      exitStatus,
      suspendedState,
      suspendedCommitReason,
      completedRenderStartTime,
      completedRenderEndTime
    ) {
      root.cancelPendingCommit = null;
      do flushPendingEffects();
      while (pendingEffectsStatus !== NO_PENDING_EFFECTS);
      ReactStrictModeWarnings.flushLegacyContextWarning();
      ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings();
      if ((executionContext & (RenderContext | CommitContext)) !== NoContext)
        throw Error("Should not already be working.");
      setCurrentTrackFromLanes(lanes);
      exitStatus === RootErrored
        ? logErroredRenderPhase(
            completedRenderStartTime,
            completedRenderEndTime,
            lanes,
            workInProgressUpdateTask
          )
        : null !== recoverableErrors
          ? logRecoveredRenderPhase(
              completedRenderStartTime,
              completedRenderEndTime,
              lanes,
              recoverableErrors,
              null !== finishedWork &&
                null !== finishedWork.alternate &&
                finishedWork.alternate.memoizedState.isDehydrated &&
                0 !== (finishedWork.flags & 256),
              workInProgressUpdateTask
            )
          : logRenderPhase(
              completedRenderStartTime,
              completedRenderEndTime,
              lanes,
              workInProgressUpdateTask
            );
      if (null !== finishedWork) {
        0 === lanes &&
          console.error(
            "finishedLanes should not be empty during a commit. This is a bug in React."
          );
        if (finishedWork === root.current)
          throw Error(
            "Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue."
          );
        didIncludeRenderPhaseUpdate =
          finishedWork.lanes | finishedWork.childLanes;
        didIncludeRenderPhaseUpdate |= concurrentlyUpdatedLanes;
        markRootFinished(
          root,
          lanes,
          didIncludeRenderPhaseUpdate,
          spawnedLane,
          updatedLanes,
          suspendedRetryLanes
        );
        root === workInProgressRoot &&
          ((workInProgress = workInProgressRoot = null),
          (workInProgressRootRenderLanes = 0));
        pendingFinishedWork = finishedWork;
        pendingEffectsRoot = root;
        pendingEffectsLanes = lanes;
        pendingEffectsRemainingLanes = didIncludeRenderPhaseUpdate;
        pendingPassiveTransitions = transitions;
        pendingRecoverableErrors = recoverableErrors;
        pendingEffectsRenderEndTime = completedRenderEndTime;
        pendingSuspendedCommitReason = suspendedCommitReason;
        pendingDelayedCommitReason = IMMEDIATE_COMMIT;
        pendingSuspendedViewTransitionReason = null;
        0 !== finishedWork.actualDuration ||
        0 !== (finishedWork.subtreeFlags & 10256) ||
        0 !== (finishedWork.flags & 10256)
          ? ((root.callbackNode = null),
            (root.callbackPriority = 0),
            scheduleCallback$1(NormalPriority$1, function () {
              schedulerEvent = window.event;
              pendingDelayedCommitReason === IMMEDIATE_COMMIT &&
                (pendingDelayedCommitReason = DELAYED_PASSIVE_COMMIT);
              flushPassiveEffects();
              return null;
            }))
          : ((root.callbackNode = null), (root.callbackPriority = 0));
        commitErrors = null;
        commitStartTime = now();
        null !== suspendedCommitReason &&
          logSuspendedCommitPhase(
            completedRenderEndTime,
            commitStartTime,
            suspendedCommitReason,
            workInProgressUpdateTask
          );
        recoverableErrors = 0 !== (finishedWork.flags & 13878);
        if (0 !== (finishedWork.subtreeFlags & 13878) || recoverableErrors) {
          recoverableErrors = ReactSharedInternals.T;
          ReactSharedInternals.T = null;
          transitions = ReactDOMSharedInternals.p;
          ReactDOMSharedInternals.p = DiscreteEventPriority;
          spawnedLane = executionContext;
          executionContext |= CommitContext;
          try {
            commitBeforeMutationEffects(root, finishedWork, lanes);
          } finally {
            (executionContext = spawnedLane),
              (ReactDOMSharedInternals.p = transitions),
              (ReactSharedInternals.T = recoverableErrors);
          }
        }
        pendingEffectsStatus = PENDING_MUTATION_PHASE;
        flushMutationEffects();
        flushLayoutEffects();
        flushSpawnedWork();
      }
    }
    function flushMutationEffects() {
      if (pendingEffectsStatus === PENDING_MUTATION_PHASE) {
        pendingEffectsStatus = NO_PENDING_EFFECTS;
        var root = pendingEffectsRoot,
          finishedWork = pendingFinishedWork,
          lanes = pendingEffectsLanes,
          rootMutationHasEffect = 0 !== (finishedWork.flags & 13878);
        if (
          0 !== (finishedWork.subtreeFlags & 13878) ||
          rootMutationHasEffect
        ) {
          rootMutationHasEffect = ReactSharedInternals.T;
          ReactSharedInternals.T = null;
          var previousPriority = ReactDOMSharedInternals.p;
          ReactDOMSharedInternals.p = DiscreteEventPriority;
          var prevExecutionContext = executionContext;
          executionContext |= CommitContext;
          try {
            inProgressLanes = lanes;
            inProgressRoot = root;
            resetComponentEffectTimers();
            commitMutationEffectsOnFiber(finishedWork, root);
            inProgressRoot = inProgressLanes = null;
            lanes = selectionInformation;
            var curFocusedElem = getActiveElementDeep(root.containerInfo),
              priorFocusedElem = lanes.focusedElem,
              priorSelectionRange = lanes.selectionRange;
            if (
              curFocusedElem !== priorFocusedElem &&
              priorFocusedElem &&
              priorFocusedElem.ownerDocument &&
              containsNode(
                priorFocusedElem.ownerDocument.documentElement,
                priorFocusedElem
              )
            ) {
              if (
                null !== priorSelectionRange &&
                hasSelectionCapabilities(priorFocusedElem)
              ) {
                var start = priorSelectionRange.start,
                  end = priorSelectionRange.end;
                void 0 === end && (end = start);
                if ("selectionStart" in priorFocusedElem)
                  (priorFocusedElem.selectionStart = start),
                    (priorFocusedElem.selectionEnd = Math.min(
                      end,
                      priorFocusedElem.value.length
                    ));
                else {
                  var doc = priorFocusedElem.ownerDocument || document,
                    win = (doc && doc.defaultView) || window;
                  if (win.getSelection) {
                    var selection = win.getSelection(),
                      length = priorFocusedElem.textContent.length,
                      start$jscomp$0 = Math.min(
                        priorSelectionRange.start,
                        length
                      ),
                      end$jscomp$0 =
                        void 0 === priorSelectionRange.end
                          ? start$jscomp$0
                          : Math.min(priorSelectionRange.end, length);
                    !selection.extend &&
                      start$jscomp$0 > end$jscomp$0 &&
                      ((curFocusedElem = end$jscomp$0),
                      (end$jscomp$0 = start$jscomp$0),
                      (start$jscomp$0 = curFocusedElem));
                    var startMarker = getNodeForCharacterOffset(
                        priorFocusedElem,
                        start$jscomp$0
                      ),
                      endMarker = getNodeForCharacterOffset(
                        priorFocusedElem,
                        end$jscomp$0
                      );
                    if (
                      startMarker &&
                      endMarker &&
                      (1 !== selection.rangeCount ||
                        selection.anchorNode !== startMarker.node ||
                        selection.anchorOffset !== startMarker.offset ||
                        selection.focusNode !== endMarker.node ||
                        selection.focusOffset !== endMarker.offset)
                    ) {
                      var range = doc.createRange();
                      range.setStart(startMarker.node, startMarker.offset);
                      selection.removeAllRanges();
                      start$jscomp$0 > end$jscomp$0
                        ? (selection.addRange(range),
                          selection.extend(endMarker.node, endMarker.offset))
                        : (range.setEnd(endMarker.node, endMarker.offset),
                          selection.addRange(range));
                    }
                  }
                }
              }
              doc = [];
              for (
                selection = priorFocusedElem;
                (selection = selection.parentNode);

              )
                1 === selection.nodeType &&
                  doc.push({
                    element: selection,
                    left: selection.scrollLeft,
                    top: selection.scrollTop
                  });
              "function" === typeof priorFocusedElem.focus &&
                priorFocusedElem.focus();
              for (
                priorFocusedElem = 0;
                priorFocusedElem < doc.length;
                priorFocusedElem++
              ) {
                var info = doc[priorFocusedElem];
                info.element.scrollLeft = info.left;
                info.element.scrollTop = info.top;
              }
            }
            _enabled = !!eventsEnabled;
            selectionInformation = eventsEnabled = null;
          } finally {
            (executionContext = prevExecutionContext),
              (ReactDOMSharedInternals.p = previousPriority),
              (ReactSharedInternals.T = rootMutationHasEffect);
          }
        }
        root.current = finishedWork;
        pendingEffectsStatus = PENDING_LAYOUT_PHASE;
      }
    }
    function flushLayoutEffects() {
      if (pendingEffectsStatus === PENDING_LAYOUT_PHASE) {
        pendingEffectsStatus = NO_PENDING_EFFECTS;
        var suspendedViewTransitionReason =
          pendingSuspendedViewTransitionReason;
        if (null !== suspendedViewTransitionReason) {
          commitStartTime = now();
          var startTime = commitEndTime,
            endTime = commitStartTime;
          !supportsUserTiming ||
            endTime <= startTime ||
            (animatingTask
              ? animatingTask.run(
                  console.timeStamp.bind(
                    console,
                    suspendedViewTransitionReason,
                    startTime,
                    endTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    "secondary-light"
                  )
                )
              : console.timeStamp(
                  suspendedViewTransitionReason,
                  startTime,
                  endTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  "secondary-light"
                ));
        }
        suspendedViewTransitionReason = pendingEffectsRoot;
        startTime = pendingFinishedWork;
        endTime = pendingEffectsLanes;
        var rootHasLayoutEffect = 0 !== (startTime.flags & 8772);
        if (0 !== (startTime.subtreeFlags & 8772) || rootHasLayoutEffect) {
          rootHasLayoutEffect = ReactSharedInternals.T;
          ReactSharedInternals.T = null;
          var _previousPriority = ReactDOMSharedInternals.p;
          ReactDOMSharedInternals.p = DiscreteEventPriority;
          var _prevExecutionContext = executionContext;
          executionContext |= CommitContext;
          try {
            (inProgressLanes = endTime),
              (inProgressRoot = suspendedViewTransitionReason),
              resetComponentEffectTimers(),
              commitLayoutEffectOnFiber(
                suspendedViewTransitionReason,
                startTime.alternate,
                startTime
              ),
              (inProgressRoot = inProgressLanes = null);
          } finally {
            (executionContext = _prevExecutionContext),
              (ReactDOMSharedInternals.p = _previousPriority),
              (ReactSharedInternals.T = rootHasLayoutEffect);
          }
        }
        suspendedViewTransitionReason = pendingEffectsRenderEndTime;
        startTime = pendingSuspendedCommitReason;
        commitEndTime = now();
        suspendedViewTransitionReason =
          null === startTime ? suspendedViewTransitionReason : commitStartTime;
        startTime = commitEndTime;
        endTime = pendingDelayedCommitReason === ABORTED_VIEW_TRANSITION_COMMIT;
        rootHasLayoutEffect = workInProgressUpdateTask;
        null !== commitErrors
          ? logCommitErrored(
              suspendedViewTransitionReason,
              startTime,
              commitErrors,
              !1,
              rootHasLayoutEffect
            )
          : !supportsUserTiming ||
            startTime <= suspendedViewTransitionReason ||
            (rootHasLayoutEffect
              ? rootHasLayoutEffect.run(
                  console.timeStamp.bind(
                    console,
                    endTime ? "Commit Interrupted View Transition" : "Commit",
                    suspendedViewTransitionReason,
                    startTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    endTime ? "error" : "secondary-dark"
                  )
                )
              : console.timeStamp(
                  endTime ? "Commit Interrupted View Transition" : "Commit",
                  suspendedViewTransitionReason,
                  startTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  endTime ? "error" : "secondary-dark"
                ));
        pendingEffectsStatus = PENDING_AFTER_MUTATION_PHASE;
      }
    }
    function flushSpawnedWork() {
      if (
        pendingEffectsStatus === PENDING_SPAWNED_WORK ||
        pendingEffectsStatus === PENDING_AFTER_MUTATION_PHASE
      ) {
        if (pendingEffectsStatus === PENDING_SPAWNED_WORK) {
          var startViewTransitionStartTime = commitEndTime;
          commitEndTime = now();
          var endTime = commitEndTime,
            abortedViewTransition =
              pendingDelayedCommitReason === ABORTED_VIEW_TRANSITION_COMMIT;
          !supportsUserTiming ||
            endTime <= startViewTransitionStartTime ||
            (animatingTask
              ? animatingTask.run(
                  console.timeStamp.bind(
                    console,
                    abortedViewTransition
                      ? "Interrupted View Transition"
                      : "Starting Animation",
                    startViewTransitionStartTime,
                    endTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    abortedViewTransition ? "error" : "secondary-light"
                  )
                )
              : console.timeStamp(
                  abortedViewTransition
                    ? "Interrupted View Transition"
                    : "Starting Animation",
                  startViewTransitionStartTime,
                  endTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  abortedViewTransition ? " error" : "secondary-light"
                ));
          pendingDelayedCommitReason !== ABORTED_VIEW_TRANSITION_COMMIT &&
            (pendingDelayedCommitReason = ANIMATION_STARTED_COMMIT);
        }
        pendingEffectsStatus = NO_PENDING_EFFECTS;
        requestPaint();
        startViewTransitionStartTime = pendingEffectsRoot;
        var finishedWork = pendingFinishedWork;
        endTime = pendingEffectsLanes;
        abortedViewTransition = pendingRecoverableErrors;
        var rootDidHavePassiveEffects =
          0 !== finishedWork.actualDuration ||
          0 !== (finishedWork.subtreeFlags & 10256) ||
          0 !== (finishedWork.flags & 10256);
        rootDidHavePassiveEffects
          ? (pendingEffectsStatus = PENDING_PASSIVE_PHASE)
          : ((pendingEffectsStatus = NO_PENDING_EFFECTS),
            (pendingFinishedWork = pendingEffectsRoot = null),
            releaseRootPooledCache(
              startViewTransitionStartTime,
              startViewTransitionStartTime.pendingLanes
            ),
            (nestedPassiveUpdateCount = 0),
            (rootWithPassiveNestedUpdates = null));
        var remainingLanes = startViewTransitionStartTime.pendingLanes;
        0 === remainingLanes && (legacyErrorBoundariesThatAlreadyFailed = null);
        rootDidHavePassiveEffects ||
          commitDoubleInvokeEffectsInDEV(startViewTransitionStartTime);
        remainingLanes = lanesToEventPriority(endTime);
        finishedWork = finishedWork.stateNode;
        if (
          injectedHook &&
          "function" === typeof injectedHook.onCommitFiberRoot
        )
          try {
            var didError = 128 === (finishedWork.current.flags & 128);
            switch (remainingLanes) {
              case DiscreteEventPriority:
                var schedulerPriority = ImmediatePriority;
                break;
              case ContinuousEventPriority:
                schedulerPriority = UserBlockingPriority;
                break;
              case DefaultEventPriority:
                schedulerPriority = NormalPriority$1;
                break;
              case IdleEventPriority:
                schedulerPriority = IdlePriority;
                break;
              default:
                schedulerPriority = NormalPriority$1;
            }
            injectedHook.onCommitFiberRoot(
              rendererID,
              finishedWork,
              schedulerPriority,
              didError
            );
          } catch (err) {
            hasLoggedError ||
              ((hasLoggedError = !0),
              console.error(
                "React instrumentation encountered an error: %o",
                err
              ));
          }
        isDevToolsPresent &&
          startViewTransitionStartTime.memoizedUpdaters.clear();
        onCommitRoot();
        if (null !== abortedViewTransition) {
          didError = ReactSharedInternals.T;
          schedulerPriority = ReactDOMSharedInternals.p;
          ReactDOMSharedInternals.p = DiscreteEventPriority;
          ReactSharedInternals.T = null;
          try {
            var onRecoverableError =
              startViewTransitionStartTime.onRecoverableError;
            for (
              finishedWork = 0;
              finishedWork < abortedViewTransition.length;
              finishedWork++
            ) {
              var recoverableError = abortedViewTransition[finishedWork],
                errorInfo = makeErrorInfo(recoverableError.stack);
              runWithFiberInDEV(
                recoverableError.source,
                onRecoverableError,
                recoverableError.value,
                errorInfo
              );
            }
          } finally {
            (ReactSharedInternals.T = didError),
              (ReactDOMSharedInternals.p = schedulerPriority);
          }
        }
        0 !== (pendingEffectsLanes & 3) && flushPendingEffects();
        ensureRootIsScheduled(startViewTransitionStartTime);
        remainingLanes = startViewTransitionStartTime.pendingLanes;
        0 !== (endTime & 261930) && 0 !== (remainingLanes & 42)
          ? ((nestedUpdateScheduled = !0),
            startViewTransitionStartTime === rootWithNestedUpdates
              ? nestedUpdateCount++
              : ((nestedUpdateCount = 0),
                (rootWithNestedUpdates = startViewTransitionStartTime)))
          : (nestedUpdateCount = 0);
        rootDidHavePassiveEffects || finalizeRender(endTime, commitEndTime);
        flushSyncWorkAcrossRoots_impl(0, !1);
      }
    }
    function makeErrorInfo(componentStack) {
      componentStack = { componentStack: componentStack };
      Object.defineProperty(componentStack, "digest", {
        get: function () {
          console.error(
            'You are accessing "digest" from the errorInfo object passed to onRecoverableError. This property is no longer provided as part of errorInfo but can be accessed as a property of the Error instance itself.'
          );
        }
      });
      return componentStack;
    }
    function releaseRootPooledCache(root, remainingLanes) {
      0 === (root.pooledCacheLanes &= remainingLanes) &&
        ((remainingLanes = root.pooledCache),
        null != remainingLanes &&
          ((root.pooledCache = null), releaseCache(remainingLanes)));
    }
    function flushPendingEffects() {
      flushMutationEffects();
      flushLayoutEffects();
      flushSpawnedWork();
      return flushPassiveEffects();
    }
    function flushPassiveEffects() {
      if (pendingEffectsStatus !== PENDING_PASSIVE_PHASE) return !1;
      var root = pendingEffectsRoot,
        remainingLanes = pendingEffectsRemainingLanes;
      pendingEffectsRemainingLanes = 0;
      var renderPriority = lanesToEventPriority(pendingEffectsLanes),
        priority =
          0 === DefaultEventPriority || DefaultEventPriority > renderPriority
            ? DefaultEventPriority
            : renderPriority;
      renderPriority = ReactSharedInternals.T;
      var previousPriority = ReactDOMSharedInternals.p;
      try {
        ReactDOMSharedInternals.p = priority;
        ReactSharedInternals.T = null;
        var transitions = pendingPassiveTransitions;
        pendingPassiveTransitions = null;
        priority = pendingEffectsRoot;
        var lanes = pendingEffectsLanes;
        pendingEffectsStatus = NO_PENDING_EFFECTS;
        pendingFinishedWork = pendingEffectsRoot = null;
        pendingEffectsLanes = 0;
        if ((executionContext & (RenderContext | CommitContext)) !== NoContext)
          throw Error("Cannot flush passive effects while already rendering.");
        setCurrentTrackFromLanes(lanes);
        isFlushingPassiveEffects = !0;
        didScheduleUpdateDuringPassiveEffects = !1;
        var passiveEffectStartTime = 0;
        commitErrors = null;
        passiveEffectStartTime = now$1();
        if (pendingDelayedCommitReason === ANIMATION_STARTED_COMMIT)
          logAnimatingPhase(
            commitEndTime,
            passiveEffectStartTime,
            animatingTask
          );
        else {
          var startTime = commitEndTime,
            endTime = passiveEffectStartTime,
            delayedUntilPaint =
              pendingDelayedCommitReason === DELAYED_PASSIVE_COMMIT;
          !supportsUserTiming ||
            endTime <= startTime ||
            (workInProgressUpdateTask
              ? workInProgressUpdateTask.run(
                  console.timeStamp.bind(
                    console,
                    delayedUntilPaint ? "Waiting for Paint" : "Waiting",
                    startTime,
                    endTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    "secondary-light"
                  )
                )
              : console.timeStamp(
                  delayedUntilPaint ? "Waiting for Paint" : "Waiting",
                  startTime,
                  endTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  "secondary-light"
                ));
        }
        startTime = executionContext;
        executionContext |= CommitContext;
        var finishedWork = priority.current;
        resetComponentEffectTimers();
        commitPassiveUnmountOnFiber(finishedWork);
        var finishedWork$jscomp$0 = priority.current;
        finishedWork = pendingEffectsRenderEndTime;
        resetComponentEffectTimers();
        commitPassiveMountOnFiber(
          priority,
          finishedWork$jscomp$0,
          lanes,
          transitions,
          finishedWork
        );
        commitDoubleInvokeEffectsInDEV(priority);
        executionContext = startTime;
        var passiveEffectsEndTime = now$1();
        finishedWork$jscomp$0 = passiveEffectStartTime;
        finishedWork = workInProgressUpdateTask;
        null !== commitErrors
          ? logCommitErrored(
              finishedWork$jscomp$0,
              passiveEffectsEndTime,
              commitErrors,
              !0,
              finishedWork
            )
          : !supportsUserTiming ||
            passiveEffectsEndTime <= finishedWork$jscomp$0 ||
            (finishedWork
              ? finishedWork.run(
                  console.timeStamp.bind(
                    console,
                    "Remaining Effects",
                    finishedWork$jscomp$0,
                    passiveEffectsEndTime,
                    currentTrack,
                    LANES_TRACK_GROUP,
                    "secondary-dark"
                  )
                )
              : console.timeStamp(
                  "Remaining Effects",
                  finishedWork$jscomp$0,
                  passiveEffectsEndTime,
                  currentTrack,
                  LANES_TRACK_GROUP,
                  "secondary-dark"
                ));
        finalizeRender(lanes, passiveEffectsEndTime);
        flushSyncWorkAcrossRoots_impl(0, !1);
        didScheduleUpdateDuringPassiveEffects
          ? priority === rootWithPassiveNestedUpdates
            ? nestedPassiveUpdateCount++
            : ((nestedPassiveUpdateCount = 0),
              (rootWithPassiveNestedUpdates = priority))
          : (nestedPassiveUpdateCount = 0);
        didScheduleUpdateDuringPassiveEffects = isFlushingPassiveEffects = !1;
        if (
          injectedHook &&
          "function" === typeof injectedHook.onPostCommitFiberRoot
        )
          try {
            injectedHook.onPostCommitFiberRoot(rendererID, priority);
          } catch (err) {
            hasLoggedError ||
              ((hasLoggedError = !0),
              console.error(
                "React instrumentation encountered an error: %o",
                err
              ));
          }
        var stateNode = priority.current.stateNode;
        stateNode.effectDuration = 0;
        stateNode.passiveEffectDuration = 0;
        return !0;
      } finally {
        (ReactDOMSharedInternals.p = previousPriority),
          (ReactSharedInternals.T = renderPriority),
          releaseRootPooledCache(root, remainingLanes);
      }
    }
    function captureCommitPhaseErrorOnRoot(rootFiber, sourceFiber, error) {
      sourceFiber = createCapturedValueAtFiber(error, sourceFiber);
      recordEffectError(sourceFiber);
      sourceFiber = createRootErrorUpdate(rootFiber.stateNode, sourceFiber, 2);
      rootFiber = enqueueUpdate(rootFiber, sourceFiber, 2);
      null !== rootFiber &&
        (markRootUpdated$1(rootFiber, 2), ensureRootIsScheduled(rootFiber));
    }
    function captureCommitPhaseError(
      sourceFiber,
      nearestMountedAncestor,
      error
    ) {
      isRunningInsertionEffect = !1;
      if (3 === sourceFiber.tag)
        captureCommitPhaseErrorOnRoot(sourceFiber, sourceFiber, error);
      else {
        for (; null !== nearestMountedAncestor; ) {
          if (3 === nearestMountedAncestor.tag) {
            captureCommitPhaseErrorOnRoot(
              nearestMountedAncestor,
              sourceFiber,
              error
            );
            return;
          }
          if (1 === nearestMountedAncestor.tag) {
            var instance = nearestMountedAncestor.stateNode;
            if (
              "function" ===
                typeof nearestMountedAncestor.type.getDerivedStateFromError ||
              ("function" === typeof instance.componentDidCatch &&
                (null === legacyErrorBoundariesThatAlreadyFailed ||
                  !legacyErrorBoundariesThatAlreadyFailed.has(instance)))
            ) {
              sourceFiber = createCapturedValueAtFiber(error, sourceFiber);
              recordEffectError(sourceFiber);
              error = createClassErrorUpdate(2);
              instance = enqueueUpdate(nearestMountedAncestor, error, 2);
              null !== instance &&
                (initializeClassErrorUpdate(
                  error,
                  instance,
                  nearestMountedAncestor,
                  sourceFiber
                ),
                markRootUpdated$1(instance, 2),
                ensureRootIsScheduled(instance));
              return;
            }
          }
          nearestMountedAncestor = nearestMountedAncestor.return;
        }
        console.error(
          "Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Potential causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer.\n\nError message:\n\n%s",
          error
        );
      }
    }
    function attachPingListener(root, wakeable, lanes) {
      var pingCache = root.pingCache;
      if (null === pingCache) {
        pingCache = root.pingCache = new PossiblyWeakMap();
        var threadIDs = new Set();
        pingCache.set(wakeable, threadIDs);
      } else
        (threadIDs = pingCache.get(wakeable)),
          void 0 === threadIDs &&
            ((threadIDs = new Set()), pingCache.set(wakeable, threadIDs));
      threadIDs.has(lanes) ||
        ((workInProgressRootDidAttachPingListener = !0),
        threadIDs.add(lanes),
        (pingCache = pingSuspendedRoot.bind(null, root, wakeable, lanes)),
        isDevToolsPresent && restorePendingUpdaters(root, lanes),
        wakeable.then(pingCache, pingCache));
    }
    function pingSuspendedRoot(root, wakeable, pingedLanes) {
      var pingCache = root.pingCache;
      null !== pingCache && pingCache.delete(wakeable);
      root.pingedLanes |= root.suspendedLanes & pingedLanes;
      root.warmLanes &= ~pingedLanes;
      0 !== (pingedLanes & 127)
        ? 0 > blockingUpdateTime &&
          ((blockingClampTime = blockingUpdateTime = now()),
          (blockingUpdateTask = createTask("Promise Resolved")),
          (blockingUpdateType = PINGED_UPDATE))
        : 0 !== (pingedLanes & 4194048) &&
          0 > transitionUpdateTime &&
          ((transitionClampTime = transitionUpdateTime = now()),
          (transitionUpdateTask = createTask("Promise Resolved")),
          (transitionUpdateType = PINGED_UPDATE));
      isConcurrentActEnvironment() &&
        null === ReactSharedInternals.actQueue &&
        console.error(
          "A suspended resource finished loading inside a test, but the event was not wrapped in act(...).\n\nWhen testing, code that resolves suspended data should be wrapped into act(...):\n\nact(() => {\n  /* finish loading suspended data */\n});\n/* assert on the output */\n\nThis ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act"
        );
      workInProgressRoot === root &&
        (workInProgressRootRenderLanes & pingedLanes) === pingedLanes &&
        (workInProgressRootExitStatus === RootSuspendedWithDelay ||
        (workInProgressRootExitStatus === RootSuspended &&
          (workInProgressRootRenderLanes & 62914560) ===
            workInProgressRootRenderLanes &&
          now$1() - globalMostRecentFallbackTime < FALLBACK_THROTTLE_MS)
          ? (executionContext & RenderContext) === NoContext &&
            prepareFreshStack(root, 0)
          : (workInProgressRootPingedLanes |= pingedLanes),
        workInProgressSuspendedRetryLanes === workInProgressRootRenderLanes &&
          (workInProgressSuspendedRetryLanes = 0));
      ensureRootIsScheduled(root);
    }
    function retryTimedOutBoundary(boundaryFiber, retryLane) {
      0 === retryLane && (retryLane = claimNextRetryLane());
      boundaryFiber = enqueueConcurrentRenderForLane(boundaryFiber, retryLane);
      null !== boundaryFiber &&
        (markRootUpdated$1(boundaryFiber, retryLane),
        ensureRootIsScheduled(boundaryFiber));
    }
    function retryDehydratedSuspenseBoundary(boundaryFiber) {
      var suspenseState = boundaryFiber.memoizedState,
        retryLane = 0;
      null !== suspenseState && (retryLane = suspenseState.retryLane);
      retryTimedOutBoundary(boundaryFiber, retryLane);
    }
    function resolveRetryWakeable(boundaryFiber, wakeable) {
      var retryLane = 0;
      switch (boundaryFiber.tag) {
        case 31:
        case 13:
          var retryCache = boundaryFiber.stateNode;
          var suspenseState = boundaryFiber.memoizedState;
          null !== suspenseState && (retryLane = suspenseState.retryLane);
          break;
        case 19:
          retryCache = boundaryFiber.stateNode;
          break;
        case 22:
          retryCache = boundaryFiber.stateNode._retryCache;
          break;
        default:
          throw Error(
            "Pinged unknown suspense boundary type. This is probably a bug in React."
          );
      }
      null !== retryCache && retryCache.delete(wakeable);
      retryTimedOutBoundary(boundaryFiber, retryLane);
    }
    function recursivelyTraverseAndDoubleInvokeEffectsInDEV(
      root$jscomp$0,
      parentFiber,
      isInStrictMode
    ) {
      if (0 !== (parentFiber.subtreeFlags & 67117056))
        for (parentFiber = parentFiber.child; null !== parentFiber; ) {
          var root = root$jscomp$0,
            fiber = parentFiber,
            isStrictModeFiber = fiber.type === REACT_STRICT_MODE_TYPE;
          isStrictModeFiber = isInStrictMode || isStrictModeFiber;
          22 !== fiber.tag
            ? fiber.flags & 67108864
              ? isStrictModeFiber &&
                runWithFiberInDEV(
                  fiber,
                  doubleInvokeEffectsOnFiber,
                  root,
                  fiber
                )
              : recursivelyTraverseAndDoubleInvokeEffectsInDEV(
                  root,
                  fiber,
                  isStrictModeFiber
                )
            : null === fiber.memoizedState &&
              (isStrictModeFiber && fiber.flags & 8192
                ? runWithFiberInDEV(
                    fiber,
                    doubleInvokeEffectsOnFiber,
                    root,
                    fiber
                  )
                : fiber.subtreeFlags & 67108864 &&
                  runWithFiberInDEV(
                    fiber,
                    recursivelyTraverseAndDoubleInvokeEffectsInDEV,
                    root,
                    fiber,
                    isStrictModeFiber
                  ));
          parentFiber = parentFiber.sibling;
        }
    }
    function doubleInvokeEffectsOnFiber(root, fiber) {
      setIsStrictModeForDevtools(!0);
      try {
        disappearLayoutEffects(fiber),
          disconnectPassiveEffect(fiber),
          reappearLayoutEffects(root, fiber.alternate, fiber, !1),
          reconnectPassiveEffects(root, fiber, 0, null, !1, 0);
      } finally {
        setIsStrictModeForDevtools(!1);
      }
    }
    function commitDoubleInvokeEffectsInDEV(root) {
      var doubleInvokeEffects = !0;
      root.current.mode & (StrictLegacyMode | StrictEffectsMode) ||
        (doubleInvokeEffects = !1);
      recursivelyTraverseAndDoubleInvokeEffectsInDEV(
        root,
        root.current,
        doubleInvokeEffects
      );
    }
    function warnAboutUpdateOnNotYetMountedFiberInDEV(fiber) {
      if ((executionContext & RenderContext) === NoContext) {
        var tag = fiber.tag;
        if (
          3 === tag ||
          1 === tag ||
          0 === tag ||
          11 === tag ||
          14 === tag ||
          15 === tag
        ) {
          tag = getComponentNameFromFiber(fiber) || "ReactComponent";
          if (null !== didWarnStateUpdateForNotYetMountedComponent) {
            if (didWarnStateUpdateForNotYetMountedComponent.has(tag)) return;
            didWarnStateUpdateForNotYetMountedComponent.add(tag);
          } else didWarnStateUpdateForNotYetMountedComponent = new Set([tag]);
          runWithFiberInDEV(fiber, function () {
            console.error(
              "Can't perform a React state update on a component that hasn't mounted yet. This indicates that you have a side-effect in your render function that asynchronously tries to update the component. Move this work to useEffect instead."
            );
          });
        }
      }
    }
    function restorePendingUpdaters(root, lanes) {
      isDevToolsPresent &&
        root.memoizedUpdaters.forEach(function (schedulingFiber) {
          addFiberToLanesMap(root, schedulingFiber, lanes);
        });
    }
    function scheduleCallback$1(priorityLevel, callback) {
      var actQueue = ReactSharedInternals.actQueue;
      return null !== actQueue
        ? (actQueue.push(callback), fakeActCallbackNode$1)
        : scheduleCallback$3(priorityLevel, callback);
    }
    function warnIfUpdatesNotWrappedWithActDEV(fiber) {
      isConcurrentActEnvironment() &&
        null === ReactSharedInternals.actQueue &&
        runWithFiberInDEV(fiber, function () {
          console.error(
            "An update to %s inside a test was not wrapped in act(...).\n\nWhen testing, code that causes React state updates should be wrapped into act(...):\n\nact(() => {\n  /* fire events that update state */\n});\n/* assert on the output */\n\nThis ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act",
            getComponentNameFromFiber(fiber)
          );
        });
    }
    function ensureRootIsScheduled(root) {
      root !== lastScheduledRoot &&
        null === root.next &&
        (null === lastScheduledRoot
          ? (firstScheduledRoot = lastScheduledRoot = root)
          : (lastScheduledRoot = lastScheduledRoot.next = root));
      mightHavePendingSyncWork = !0;
      null !== ReactSharedInternals.actQueue
        ? didScheduleMicrotask_act ||
          ((didScheduleMicrotask_act = !0), scheduleImmediateRootScheduleTask())
        : didScheduleMicrotask ||
          ((didScheduleMicrotask = !0), scheduleImmediateRootScheduleTask());
    }
    function flushSyncWorkAcrossRoots_impl(syncTransitionLanes, onlyLegacy) {
      if (!isFlushingWork && mightHavePendingSyncWork) {
        isFlushingWork = !0;
        do {
          var didPerformSomeWork = !1;
          for (var root = firstScheduledRoot; null !== root; ) {
            if (!onlyLegacy)
              if (0 !== syncTransitionLanes) {
                var pendingLanes = root.pendingLanes;
                if (0 === pendingLanes) var nextLanes = 0;
                else {
                  var suspendedLanes = root.suspendedLanes,
                    pingedLanes = root.pingedLanes;
                  nextLanes =
                    (1 << (31 - clz32(42 | syncTransitionLanes) + 1)) - 1;
                  nextLanes &= pendingLanes & ~(suspendedLanes & ~pingedLanes);
                  nextLanes =
                    nextLanes & 201326741
                      ? (nextLanes & 201326741) | 1
                      : nextLanes
                        ? nextLanes | 2
                        : 0;
                }
                0 !== nextLanes &&
                  ((didPerformSomeWork = !0),
                  performSyncWorkOnRoot(root, nextLanes));
              } else
                (nextLanes = workInProgressRootRenderLanes),
                  (nextLanes = getNextLanes(
                    root,
                    root === workInProgressRoot ? nextLanes : 0,
                    null !== root.cancelPendingCommit ||
                      root.timeoutHandle !== noTimeout
                  )),
                  0 === (nextLanes & 3) ||
                    checkIfRootIsPrerendering(root, nextLanes) ||
                    ((didPerformSomeWork = !0),
                    performSyncWorkOnRoot(root, nextLanes));
            root = root.next;
          }
        } while (didPerformSomeWork);
        isFlushingWork = !1;
      }
    }
    function processRootScheduleInImmediateTask() {
      schedulerEvent = window.event;
      processRootScheduleInMicrotask();
    }
    function processRootScheduleInMicrotask() {
      mightHavePendingSyncWork =
        didScheduleMicrotask_act =
        didScheduleMicrotask =
          !1;
      var syncTransitionLanes = 0;
      0 !== currentEventTransitionLane &&
        shouldAttemptEagerTransition() &&
        (syncTransitionLanes = currentEventTransitionLane);
      for (
        var currentTime = now$1(), prev = null, root = firstScheduledRoot;
        null !== root;

      ) {
        var next = root.next,
          nextLanes = scheduleTaskForRootDuringMicrotask(root, currentTime);
        if (0 === nextLanes)
          (root.next = null),
            null === prev ? (firstScheduledRoot = next) : (prev.next = next),
            null === next && (lastScheduledRoot = prev);
        else if (
          ((prev = root), 0 !== syncTransitionLanes || 0 !== (nextLanes & 3))
        )
          mightHavePendingSyncWork = !0;
        root = next;
      }
      (pendingEffectsStatus !== NO_PENDING_EFFECTS &&
        pendingEffectsStatus !== PENDING_PASSIVE_PHASE) ||
        flushSyncWorkAcrossRoots_impl(syncTransitionLanes, !1);
      0 !== currentEventTransitionLane && (currentEventTransitionLane = 0);
    }
    function scheduleTaskForRootDuringMicrotask(root, currentTime) {
      for (
        var suspendedLanes = root.suspendedLanes,
          pingedLanes = root.pingedLanes,
          expirationTimes = root.expirationTimes,
          lanes = root.pendingLanes & -62914561;
        0 < lanes;

      ) {
        var index = 31 - clz32(lanes),
          lane = 1 << index,
          expirationTime = expirationTimes[index];
        if (-1 === expirationTime) {
          if (0 === (lane & suspendedLanes) || 0 !== (lane & pingedLanes))
            expirationTimes[index] = computeExpirationTime(lane, currentTime);
        } else expirationTime <= currentTime && (root.expiredLanes |= lane);
        lanes &= ~lane;
      }
      currentTime = workInProgressRoot;
      suspendedLanes = workInProgressRootRenderLanes;
      suspendedLanes = getNextLanes(
        root,
        root === currentTime ? suspendedLanes : 0,
        null !== root.cancelPendingCommit || root.timeoutHandle !== noTimeout
      );
      pingedLanes = root.callbackNode;
      if (
        0 === suspendedLanes ||
        (root === currentTime &&
          (workInProgressSuspendedReason === SuspendedOnData ||
            workInProgressSuspendedReason === SuspendedOnAction)) ||
        null !== root.cancelPendingCommit
      )
        return (
          null !== pingedLanes && cancelCallback(pingedLanes),
          (root.callbackNode = null),
          (root.callbackPriority = 0)
        );
      if (
        0 === (suspendedLanes & 3) ||
        checkIfRootIsPrerendering(root, suspendedLanes)
      ) {
        currentTime = suspendedLanes & -suspendedLanes;
        if (
          currentTime !== root.callbackPriority ||
          (null !== ReactSharedInternals.actQueue &&
            pingedLanes !== fakeActCallbackNode)
        )
          cancelCallback(pingedLanes);
        else return currentTime;
        switch (lanesToEventPriority(suspendedLanes)) {
          case DiscreteEventPriority:
          case ContinuousEventPriority:
            suspendedLanes = UserBlockingPriority;
            break;
          case DefaultEventPriority:
            suspendedLanes = NormalPriority$1;
            break;
          case IdleEventPriority:
            suspendedLanes = IdlePriority;
            break;
          default:
            suspendedLanes = NormalPriority$1;
        }
        pingedLanes = performWorkOnRootViaSchedulerTask.bind(null, root);
        null !== ReactSharedInternals.actQueue
          ? (ReactSharedInternals.actQueue.push(pingedLanes),
            (suspendedLanes = fakeActCallbackNode))
          : (suspendedLanes = scheduleCallback$3(suspendedLanes, pingedLanes));
        root.callbackPriority = currentTime;
        root.callbackNode = suspendedLanes;
        return currentTime;
      }
      null !== pingedLanes && cancelCallback(pingedLanes);
      root.callbackPriority = 2;
      root.callbackNode = null;
      return 2;
    }
    function performWorkOnRootViaSchedulerTask(root, didTimeout) {
      nestedUpdateScheduled = currentUpdateIsNested = !1;
      schedulerEvent = window.event;
      if (
        pendingEffectsStatus !== NO_PENDING_EFFECTS &&
        pendingEffectsStatus !== PENDING_PASSIVE_PHASE
      )
        return (root.callbackNode = null), (root.callbackPriority = 0), null;
      var originalCallbackNode = root.callbackNode;
      pendingDelayedCommitReason === IMMEDIATE_COMMIT &&
        (pendingDelayedCommitReason = DELAYED_PASSIVE_COMMIT);
      if (flushPendingEffects() && root.callbackNode !== originalCallbackNode)
        return null;
      var workInProgressRootRenderLanes$jscomp$0 =
        workInProgressRootRenderLanes;
      workInProgressRootRenderLanes$jscomp$0 = getNextLanes(
        root,
        root === workInProgressRoot
          ? workInProgressRootRenderLanes$jscomp$0
          : 0,
        null !== root.cancelPendingCommit || root.timeoutHandle !== noTimeout
      );
      if (0 === workInProgressRootRenderLanes$jscomp$0) return null;
      performWorkOnRoot(
        root,
        workInProgressRootRenderLanes$jscomp$0,
        didTimeout
      );
      scheduleTaskForRootDuringMicrotask(root, now$1());
      return null != root.callbackNode &&
        root.callbackNode === originalCallbackNode
        ? performWorkOnRootViaSchedulerTask.bind(null, root)
        : null;
    }
    function performSyncWorkOnRoot(root, lanes) {
      if (flushPendingEffects()) return null;
      currentUpdateIsNested = nestedUpdateScheduled;
      nestedUpdateScheduled = !1;
      performWorkOnRoot(root, lanes, !0);
    }
    function cancelCallback(callbackNode) {
      callbackNode !== fakeActCallbackNode &&
        null !== callbackNode &&
        cancelCallback$1(callbackNode);
    }
    function scheduleImmediateRootScheduleTask() {
      null !== ReactSharedInternals.actQueue &&
        ReactSharedInternals.actQueue.push(function () {
          processRootScheduleInMicrotask();
          return null;
        });
      scheduleMicrotask(function () {
        (executionContext & (RenderContext | CommitContext)) !== NoContext
          ? scheduleCallback$3(
              ImmediatePriority,
              processRootScheduleInImmediateTask
            )
          : processRootScheduleInMicrotask();
      });
    }
    function requestTransitionLane() {
      if (0 === currentEventTransitionLane) {
        var actionScopeLane = currentEntangledLane;
        0 === actionScopeLane &&
          ((actionScopeLane = nextTransitionUpdateLane),
          (nextTransitionUpdateLane <<= 1),
          0 === (nextTransitionUpdateLane & 261888) &&
            (nextTransitionUpdateLane = 256));
        currentEventTransitionLane = actionScopeLane;
      }
      return currentEventTransitionLane;
    }
    function coerceFormActionProp(actionProp) {
      if (
        null == actionProp ||
        "symbol" === typeof actionProp ||
        "boolean" === typeof actionProp
      )
        return null;
      if ("function" === typeof actionProp) return actionProp;
      checkAttributeStringCoercion(actionProp, "action");
      return sanitizeURL("" + actionProp);
    }
    function createFormDataWithSubmitter(form, submitter) {
      var temp = submitter.ownerDocument.createElement("input");
      temp.name = submitter.name;
      temp.value = submitter.value;
      form.id && temp.setAttribute("form", form.id);
      submitter.parentNode.insertBefore(temp, submitter);
      form = new FormData(form);
      temp.parentNode.removeChild(temp);
      return form;
    }
    function extractEvents$1(
      dispatchQueue,
      domEventName,
      maybeTargetInst,
      nativeEvent,
      nativeEventTarget
    ) {
      if (
        "submit" === domEventName &&
        maybeTargetInst &&
        maybeTargetInst.stateNode === nativeEventTarget
      ) {
        var action = coerceFormActionProp(
            (nativeEventTarget[internalPropsKey] || null).action
          ),
          submitter = nativeEvent.submitter;
        submitter &&
          ((domEventName = (domEventName = submitter[internalPropsKey] || null)
            ? coerceFormActionProp(domEventName.formAction)
            : submitter.getAttribute("formAction")),
          null !== domEventName &&
            ((action = domEventName), (submitter = null)));
        var event = new SyntheticEvent(
          "action",
          "action",
          null,
          nativeEvent,
          nativeEventTarget
        );
        dispatchQueue.push({
          event: event,
          listeners: [
            {
              instance: null,
              listener: function () {
                if (nativeEvent.defaultPrevented) {
                  if (0 !== currentEventTransitionLane) {
                    var formData = submitter
                        ? createFormDataWithSubmitter(
                            nativeEventTarget,
                            submitter
                          )
                        : new FormData(nativeEventTarget),
                      pendingState = {
                        pending: !0,
                        data: formData,
                        method: nativeEventTarget.method,
                        action: action
                      };
                    Object.freeze(pendingState);
                    startHostTransition(
                      maybeTargetInst,
                      pendingState,
                      null,
                      formData
                    );
                  }
                } else
                  "function" === typeof action &&
                    (event.preventDefault(),
                    (formData = submitter
                      ? createFormDataWithSubmitter(
                          nativeEventTarget,
                          submitter
                        )
                      : new FormData(nativeEventTarget)),
                    (pendingState = {
                      pending: !0,
                      data: formData,
                      method: nativeEventTarget.method,
                      action: action
                    }),
                    Object.freeze(pendingState),
                    startHostTransition(
                      maybeTargetInst,
                      pendingState,
                      action,
                      formData
                    ));
              },
              currentTarget: nativeEventTarget
            }
          ]
        });
      }
    }
    function executeDispatch(event, listener, currentTarget) {
      event.currentTarget = currentTarget;
      try {
        listener(event);
      } catch (error) {
        reportGlobalError(error);
      }
      event.currentTarget = null;
    }
    function processDispatchQueue(dispatchQueue, eventSystemFlags) {
      eventSystemFlags = 0 !== (eventSystemFlags & 4);
      for (var i = 0; i < dispatchQueue.length; i++) {
        var _dispatchQueue$i = dispatchQueue[i];
        a: {
          var previousInstance = void 0,
            event = _dispatchQueue$i.event;
          _dispatchQueue$i = _dispatchQueue$i.listeners;
          if (eventSystemFlags)
            for (
              var i$jscomp$0 = _dispatchQueue$i.length - 1;
              0 <= i$jscomp$0;
              i$jscomp$0--
            ) {
              var _dispatchListeners$i = _dispatchQueue$i[i$jscomp$0],
                instance = _dispatchListeners$i.instance,
                currentTarget = _dispatchListeners$i.currentTarget;
              _dispatchListeners$i = _dispatchListeners$i.listener;
              if (instance !== previousInstance && event.isPropagationStopped())
                break a;
              null !== instance
                ? runWithFiberInDEV(
                    instance,
                    executeDispatch,
                    event,
                    _dispatchListeners$i,
                    currentTarget
                  )
                : executeDispatch(event, _dispatchListeners$i, currentTarget);
              previousInstance = instance;
            }
          else
            for (
              i$jscomp$0 = 0;
              i$jscomp$0 < _dispatchQueue$i.length;
              i$jscomp$0++
            ) {
              _dispatchListeners$i = _dispatchQueue$i[i$jscomp$0];
              instance = _dispatchListeners$i.instance;
              currentTarget = _dispatchListeners$i.currentTarget;
              _dispatchListeners$i = _dispatchListeners$i.listener;
              if (instance !== previousInstance && event.isPropagationStopped())
                break a;
              null !== instance
                ? runWithFiberInDEV(
                    instance,
                    executeDispatch,
                    event,
                    _dispatchListeners$i,
                    currentTarget
                  )
                : executeDispatch(event, _dispatchListeners$i, currentTarget);
              previousInstance = instance;
            }
        }
      }
    }
    function listenToNonDelegatedEvent(domEventName, targetElement) {
      nonDelegatedEvents.has(domEventName) ||
        console.error(
          'Did not expect a listenToNonDelegatedEvent() call for "%s". This is a bug in React. Please file an issue.',
          domEventName
        );
      var listenerSet = targetElement[internalEventHandlersKey];
      void 0 === listenerSet &&
        (listenerSet = targetElement[internalEventHandlersKey] = new Set());
      var listenerSetKey = domEventName + "__bubble";
      listenerSet.has(listenerSetKey) ||
        (addTrappedEventListener(targetElement, domEventName, 2, !1),
        listenerSet.add(listenerSetKey));
    }
    function listenToNativeEvent(domEventName, isCapturePhaseListener, target) {
      nonDelegatedEvents.has(domEventName) &&
        !isCapturePhaseListener &&
        console.error(
          'Did not expect a listenToNativeEvent() call for "%s" in the bubble phase. This is a bug in React. Please file an issue.',
          domEventName
        );
      var eventSystemFlags = 0;
      isCapturePhaseListener && (eventSystemFlags |= 4);
      addTrappedEventListener(
        target,
        domEventName,
        eventSystemFlags,
        isCapturePhaseListener
      );
    }
    function listenToAllSupportedEvents(rootContainerElement) {
      if (!rootContainerElement[listeningMarker]) {
        rootContainerElement[listeningMarker] = !0;
        allNativeEvents.forEach(function (domEventName) {
          "selectionchange" !== domEventName &&
            (nonDelegatedEvents.has(domEventName) ||
              listenToNativeEvent(domEventName, !1, rootContainerElement),
            listenToNativeEvent(domEventName, !0, rootContainerElement));
        });
        var ownerDocument =
          9 === rootContainerElement.nodeType
            ? rootContainerElement
            : rootContainerElement.ownerDocument;
        null === ownerDocument ||
          ownerDocument[listeningMarker] ||
          ((ownerDocument[listeningMarker] = !0),
          listenToNativeEvent("selectionchange", !1, ownerDocument));
      }
    }
    function addTrappedEventListener(
      targetContainer,
      domEventName,
      eventSystemFlags,
      isCapturePhaseListener
    ) {
      switch (getEventPriority(domEventName)) {
        case DiscreteEventPriority:
          var listenerWrapper = dispatchDiscreteEvent;
          break;
        case ContinuousEventPriority:
          listenerWrapper = dispatchContinuousEvent;
          break;
        default:
          listenerWrapper = dispatchEvent;
      }
      eventSystemFlags = listenerWrapper.bind(
        null,
        domEventName,
        eventSystemFlags,
        targetContainer
      );
      listenerWrapper = void 0;
      !passiveBrowserEventsSupported ||
        ("touchstart" !== domEventName &&
          "touchmove" !== domEventName &&
          "wheel" !== domEventName) ||
        (listenerWrapper = !0);
      isCapturePhaseListener
        ? void 0 !== listenerWrapper
          ? targetContainer.addEventListener(domEventName, eventSystemFlags, {
              capture: !0,
              passive: listenerWrapper
            })
          : targetContainer.addEventListener(domEventName, eventSystemFlags, !0)
        : void 0 !== listenerWrapper
          ? targetContainer.addEventListener(domEventName, eventSystemFlags, {
              passive: listenerWrapper
            })
          : targetContainer.addEventListener(
              domEventName,
              eventSystemFlags,
              !1
            );
    }
    function dispatchEventForPluginEventSystem(
      domEventName,
      eventSystemFlags,
      nativeEvent,
      targetInst$jscomp$0,
      targetContainer
    ) {
      var ancestorInst = targetInst$jscomp$0;
      if (
        0 === (eventSystemFlags & 1) &&
        0 === (eventSystemFlags & 2) &&
        null !== targetInst$jscomp$0
      )
        a: for (;;) {
          if (null === targetInst$jscomp$0) return;
          var nodeTag = targetInst$jscomp$0.tag;
          if (3 === nodeTag || 4 === nodeTag) {
            var container = targetInst$jscomp$0.stateNode.containerInfo;
            if (container === targetContainer) break;
            if (4 === nodeTag)
              for (nodeTag = targetInst$jscomp$0.return; null !== nodeTag; ) {
                var grandTag = nodeTag.tag;
                if (
                  (3 === grandTag || 4 === grandTag) &&
                  nodeTag.stateNode.containerInfo === targetContainer
                )
                  return;
                nodeTag = nodeTag.return;
              }
            for (; null !== container; ) {
              nodeTag = getClosestInstanceFromNode(container);
              if (null === nodeTag) return;
              grandTag = nodeTag.tag;
              if (
                5 === grandTag ||
                6 === grandTag ||
                26 === grandTag ||
                27 === grandTag
              ) {
                targetInst$jscomp$0 = ancestorInst = nodeTag;
                continue a;
              }
              container = container.parentNode;
            }
          }
          targetInst$jscomp$0 = targetInst$jscomp$0.return;
        }
      batchedUpdates$1(function () {
        var targetInst = ancestorInst,
          nativeEventTarget = getEventTarget(nativeEvent),
          dispatchQueue = [];
        a: {
          var reactName = topLevelEventsToReactNames.get(domEventName);
          if (void 0 !== reactName) {
            var SyntheticEventCtor = SyntheticEvent,
              reactEventType = domEventName;
            switch (domEventName) {
              case "keypress":
                if (0 === getEventCharCode(nativeEvent)) break a;
              case "keydown":
              case "keyup":
                SyntheticEventCtor = SyntheticKeyboardEvent;
                break;
              case "focusin":
                reactEventType = "focus";
                SyntheticEventCtor = SyntheticFocusEvent;
                break;
              case "focusout":
                reactEventType = "blur";
                SyntheticEventCtor = SyntheticFocusEvent;
                break;
              case "beforeblur":
              case "afterblur":
                SyntheticEventCtor = SyntheticFocusEvent;
                break;
              case "click":
                if (2 === nativeEvent.button) break a;
              case "auxclick":
              case "dblclick":
              case "mousedown":
              case "mousemove":
              case "mouseup":
              case "mouseout":
              case "mouseover":
              case "contextmenu":
                SyntheticEventCtor = SyntheticMouseEvent;
                break;
              case "drag":
              case "dragend":
              case "dragenter":
              case "dragexit":
              case "dragleave":
              case "dragover":
              case "dragstart":
              case "drop":
                SyntheticEventCtor = SyntheticDragEvent;
                break;
              case "touchcancel":
              case "touchend":
              case "touchmove":
              case "touchstart":
                SyntheticEventCtor = SyntheticTouchEvent;
                break;
              case ANIMATION_END:
              case ANIMATION_ITERATION:
              case ANIMATION_START:
                SyntheticEventCtor = SyntheticAnimationEvent;
                break;
              case TRANSITION_END:
                SyntheticEventCtor = SyntheticTransitionEvent;
                break;
              case "scroll":
              case "scrollend":
                SyntheticEventCtor = SyntheticUIEvent;
                break;
              case "wheel":
                SyntheticEventCtor = SyntheticWheelEvent;
                break;
              case "copy":
              case "cut":
              case "paste":
                SyntheticEventCtor = SyntheticClipboardEvent;
                break;
              case "gotpointercapture":
              case "lostpointercapture":
              case "pointercancel":
              case "pointerdown":
              case "pointermove":
              case "pointerout":
              case "pointerover":
              case "pointerup":
                SyntheticEventCtor = SyntheticPointerEvent;
                break;
              case "toggle":
              case "beforetoggle":
                SyntheticEventCtor = SyntheticToggleEvent;
            }
            var inCapturePhase = 0 !== (eventSystemFlags & 4),
              accumulateTargetOnly =
                !inCapturePhase &&
                ("scroll" === domEventName || "scrollend" === domEventName),
              reactEventName = inCapturePhase
                ? null !== reactName
                  ? reactName + "Capture"
                  : null
                : reactName;
            inCapturePhase = [];
            for (
              var instance = targetInst, lastHostComponent;
              null !== instance;

            ) {
              var _instance2 = instance;
              lastHostComponent = _instance2.stateNode;
              _instance2 = _instance2.tag;
              (5 !== _instance2 && 26 !== _instance2 && 27 !== _instance2) ||
                null === lastHostComponent ||
                null === reactEventName ||
                ((_instance2 = getListener(instance, reactEventName)),
                null != _instance2 &&
                  inCapturePhase.push(
                    createDispatchListener(
                      instance,
                      _instance2,
                      lastHostComponent
                    )
                  ));
              if (accumulateTargetOnly) break;
              instance = instance.return;
            }
            0 < inCapturePhase.length &&
              ((reactName = new SyntheticEventCtor(
                reactName,
                reactEventType,
                null,
                nativeEvent,
                nativeEventTarget
              )),
              dispatchQueue.push({
                event: reactName,
                listeners: inCapturePhase
              }));
          }
        }
        if (0 === (eventSystemFlags & 7)) {
          a: {
            reactName =
              "mouseover" === domEventName || "pointerover" === domEventName;
            SyntheticEventCtor =
              "mouseout" === domEventName || "pointerout" === domEventName;
            if (
              reactName &&
              nativeEvent !== currentReplayingEvent &&
              (reactEventType =
                nativeEvent.relatedTarget || nativeEvent.fromElement) &&
              (getClosestInstanceFromNode(reactEventType) ||
                reactEventType[internalContainerInstanceKey])
            )
              break a;
            if (SyntheticEventCtor || reactName) {
              reactName =
                nativeEventTarget.window === nativeEventTarget
                  ? nativeEventTarget
                  : (reactName = nativeEventTarget.ownerDocument)
                    ? reactName.defaultView || reactName.parentWindow
                    : window;
              if (SyntheticEventCtor) {
                if (
                  ((reactEventType =
                    nativeEvent.relatedTarget || nativeEvent.toElement),
                  (SyntheticEventCtor = targetInst),
                  (reactEventType = reactEventType
                    ? getClosestInstanceFromNode(reactEventType)
                    : null),
                  null !== reactEventType &&
                    ((accumulateTargetOnly =
                      getNearestMountedFiber(reactEventType)),
                    (inCapturePhase = reactEventType.tag),
                    reactEventType !== accumulateTargetOnly ||
                      (5 !== inCapturePhase &&
                        27 !== inCapturePhase &&
                        6 !== inCapturePhase)))
                )
                  reactEventType = null;
              } else (SyntheticEventCtor = null), (reactEventType = targetInst);
              if (SyntheticEventCtor !== reactEventType) {
                inCapturePhase = SyntheticMouseEvent;
                _instance2 = "onMouseLeave";
                reactEventName = "onMouseEnter";
                instance = "mouse";
                if (
                  "pointerout" === domEventName ||
                  "pointerover" === domEventName
                )
                  (inCapturePhase = SyntheticPointerEvent),
                    (_instance2 = "onPointerLeave"),
                    (reactEventName = "onPointerEnter"),
                    (instance = "pointer");
                accumulateTargetOnly =
                  null == SyntheticEventCtor
                    ? reactName
                    : getNodeFromInstance(SyntheticEventCtor);
                lastHostComponent =
                  null == reactEventType
                    ? reactName
                    : getNodeFromInstance(reactEventType);
                reactName = new inCapturePhase(
                  _instance2,
                  instance + "leave",
                  SyntheticEventCtor,
                  nativeEvent,
                  nativeEventTarget
                );
                reactName.target = accumulateTargetOnly;
                reactName.relatedTarget = lastHostComponent;
                _instance2 = null;
                getClosestInstanceFromNode(nativeEventTarget) === targetInst &&
                  ((inCapturePhase = new inCapturePhase(
                    reactEventName,
                    instance + "enter",
                    reactEventType,
                    nativeEvent,
                    nativeEventTarget
                  )),
                  (inCapturePhase.target = lastHostComponent),
                  (inCapturePhase.relatedTarget = accumulateTargetOnly),
                  (_instance2 = inCapturePhase));
                accumulateTargetOnly = _instance2;
                if (SyntheticEventCtor && reactEventType)
                  b: {
                    inCapturePhase = getParent;
                    reactEventName = SyntheticEventCtor;
                    instance = reactEventType;
                    lastHostComponent = 0;
                    for (
                      _instance2 = reactEventName;
                      _instance2;
                      _instance2 = inCapturePhase(_instance2)
                    )
                      lastHostComponent++;
                    _instance2 = 0;
                    for (
                      var tempB = instance;
                      tempB;
                      tempB = inCapturePhase(tempB)
                    )
                      _instance2++;
                    for (; 0 < lastHostComponent - _instance2; )
                      (reactEventName = inCapturePhase(reactEventName)),
                        lastHostComponent--;
                    for (; 0 < _instance2 - lastHostComponent; )
                      (instance = inCapturePhase(instance)), _instance2--;
                    for (; lastHostComponent--; ) {
                      if (
                        reactEventName === instance ||
                        (null !== instance &&
                          reactEventName === instance.alternate)
                      ) {
                        inCapturePhase = reactEventName;
                        break b;
                      }
                      reactEventName = inCapturePhase(reactEventName);
                      instance = inCapturePhase(instance);
                    }
                    inCapturePhase = null;
                  }
                else inCapturePhase = null;
                null !== SyntheticEventCtor &&
                  accumulateEnterLeaveListenersForEvent(
                    dispatchQueue,
                    reactName,
                    SyntheticEventCtor,
                    inCapturePhase,
                    !1
                  );
                null !== reactEventType &&
                  null !== accumulateTargetOnly &&
                  accumulateEnterLeaveListenersForEvent(
                    dispatchQueue,
                    accumulateTargetOnly,
                    reactEventType,
                    inCapturePhase,
                    !0
                  );
              }
            }
          }
          a: {
            reactName = targetInst ? getNodeFromInstance(targetInst) : window;
            SyntheticEventCtor =
              reactName.nodeName && reactName.nodeName.toLowerCase();
            if (
              "select" === SyntheticEventCtor ||
              ("input" === SyntheticEventCtor && "file" === reactName.type)
            )
              var getTargetInstFunc = getTargetInstForChangeEvent;
            else if (isTextInputElement(reactName))
              if (isInputEventSupported)
                getTargetInstFunc = getTargetInstForInputOrChangeEvent;
              else {
                getTargetInstFunc = getTargetInstForInputEventPolyfill;
                var handleEventFunc = handleEventsForInputEventPolyfill;
              }
            else
              (SyntheticEventCtor = reactName.nodeName),
                !SyntheticEventCtor ||
                "input" !== SyntheticEventCtor.toLowerCase() ||
                ("checkbox" !== reactName.type && "radio" !== reactName.type)
                  ? targetInst &&
                    isCustomElement(targetInst.elementType) &&
                    (getTargetInstFunc = getTargetInstForChangeEvent)
                  : (getTargetInstFunc = getTargetInstForClickEvent);
            if (
              getTargetInstFunc &&
              (getTargetInstFunc = getTargetInstFunc(domEventName, targetInst))
            ) {
              createAndAccumulateChangeEvent(
                dispatchQueue,
                getTargetInstFunc,
                nativeEvent,
                nativeEventTarget
              );
              break a;
            }
            handleEventFunc &&
              handleEventFunc(domEventName, reactName, targetInst);
            "focusout" === domEventName &&
              targetInst &&
              "number" === reactName.type &&
              null != targetInst.memoizedProps.value &&
              setDefaultValue(reactName, "number", reactName.value);
          }
          handleEventFunc = targetInst
            ? getNodeFromInstance(targetInst)
            : window;
          switch (domEventName) {
            case "focusin":
              if (
                isTextInputElement(handleEventFunc) ||
                "true" === handleEventFunc.contentEditable
              )
                (activeElement = handleEventFunc),
                  (activeElementInst = targetInst),
                  (lastSelection = null);
              break;
            case "focusout":
              lastSelection = activeElementInst = activeElement = null;
              break;
            case "mousedown":
              mouseDown = !0;
              break;
            case "contextmenu":
            case "mouseup":
            case "dragend":
              mouseDown = !1;
              constructSelectEvent(
                dispatchQueue,
                nativeEvent,
                nativeEventTarget
              );
              break;
            case "selectionchange":
              if (skipSelectionChangeEvent) break;
            case "keydown":
            case "keyup":
              constructSelectEvent(
                dispatchQueue,
                nativeEvent,
                nativeEventTarget
              );
          }
          var fallbackData;
          if (canUseCompositionEvent)
            b: {
              switch (domEventName) {
                case "compositionstart":
                  var eventType = "onCompositionStart";
                  break b;
                case "compositionend":
                  eventType = "onCompositionEnd";
                  break b;
                case "compositionupdate":
                  eventType = "onCompositionUpdate";
                  break b;
              }
              eventType = void 0;
            }
          else
            isComposing
              ? isFallbackCompositionEnd(domEventName, nativeEvent) &&
                (eventType = "onCompositionEnd")
              : "keydown" === domEventName &&
                nativeEvent.keyCode === START_KEYCODE &&
                (eventType = "onCompositionStart");
          eventType &&
            (useFallbackCompositionData &&
              "ko" !== nativeEvent.locale &&
              (isComposing || "onCompositionStart" !== eventType
                ? "onCompositionEnd" === eventType &&
                  isComposing &&
                  (fallbackData = getData())
                : ((root = nativeEventTarget),
                  (startText = "value" in root ? root.value : root.textContent),
                  (isComposing = !0))),
            (handleEventFunc = accumulateTwoPhaseListeners(
              targetInst,
              eventType
            )),
            0 < handleEventFunc.length &&
              ((eventType = new SyntheticCompositionEvent(
                eventType,
                domEventName,
                null,
                nativeEvent,
                nativeEventTarget
              )),
              dispatchQueue.push({
                event: eventType,
                listeners: handleEventFunc
              }),
              fallbackData
                ? (eventType.data = fallbackData)
                : ((fallbackData = getDataFromCustomEvent(nativeEvent)),
                  null !== fallbackData && (eventType.data = fallbackData))));
          if (
            (fallbackData = canUseTextInputEvent
              ? getNativeBeforeInputChars(domEventName, nativeEvent)
              : getFallbackBeforeInputChars(domEventName, nativeEvent))
          )
            (eventType = accumulateTwoPhaseListeners(
              targetInst,
              "onBeforeInput"
            )),
              0 < eventType.length &&
                ((handleEventFunc = new SyntheticInputEvent(
                  "onBeforeInput",
                  "beforeinput",
                  null,
                  nativeEvent,
                  nativeEventTarget
                )),
                dispatchQueue.push({
                  event: handleEventFunc,
                  listeners: eventType
                }),
                (handleEventFunc.data = fallbackData));
          extractEvents$1(
            dispatchQueue,
            domEventName,
            targetInst,
            nativeEvent,
            nativeEventTarget
          );
        }
        processDispatchQueue(dispatchQueue, eventSystemFlags);
      });
    }
    function createDispatchListener(instance, listener, currentTarget) {
      return {
        instance: instance,
        listener: listener,
        currentTarget: currentTarget
      };
    }
    function accumulateTwoPhaseListeners(targetFiber, reactName) {
      for (
        var captureName = reactName + "Capture", listeners = [];
        null !== targetFiber;

      ) {
        var _instance3 = targetFiber,
          stateNode = _instance3.stateNode;
        _instance3 = _instance3.tag;
        (5 !== _instance3 && 26 !== _instance3 && 27 !== _instance3) ||
          null === stateNode ||
          ((_instance3 = getListener(targetFiber, captureName)),
          null != _instance3 &&
            listeners.unshift(
              createDispatchListener(targetFiber, _instance3, stateNode)
            ),
          (_instance3 = getListener(targetFiber, reactName)),
          null != _instance3 &&
            listeners.push(
              createDispatchListener(targetFiber, _instance3, stateNode)
            ));
        if (3 === targetFiber.tag) return listeners;
        targetFiber = targetFiber.return;
      }
      return [];
    }
    function getParent(inst) {
      if (null === inst) return null;
      do inst = inst.return;
      while (inst && 5 !== inst.tag && 27 !== inst.tag);
      return inst ? inst : null;
    }
    function accumulateEnterLeaveListenersForEvent(
      dispatchQueue,
      event,
      target,
      common,
      inCapturePhase
    ) {
      for (
        var registrationName = event._reactName, listeners = [];
        null !== target && target !== common;

      ) {
        var _instance4 = target,
          alternate = _instance4.alternate,
          stateNode = _instance4.stateNode;
        _instance4 = _instance4.tag;
        if (null !== alternate && alternate === common) break;
        (5 !== _instance4 && 26 !== _instance4 && 27 !== _instance4) ||
          null === stateNode ||
          ((alternate = stateNode),
          inCapturePhase
            ? ((stateNode = getListener(target, registrationName)),
              null != stateNode &&
                listeners.unshift(
                  createDispatchListener(target, stateNode, alternate)
                ))
            : inCapturePhase ||
              ((stateNode = getListener(target, registrationName)),
              null != stateNode &&
                listeners.push(
                  createDispatchListener(target, stateNode, alternate)
                )));
        target = target.return;
      }
      0 !== listeners.length &&
        dispatchQueue.push({ event: event, listeners: listeners });
    }
    function validatePropertiesInDevelopment(type, props) {
      validateProperties$2(type, props);
      ("input" !== type && "textarea" !== type && "select" !== type) ||
        null == props ||
        null !== props.value ||
        didWarnValueNull ||
        ((didWarnValueNull = !0),
        "select" === type && props.multiple
          ? console.error(
              "`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.",
              type
            )
          : console.error(
              "`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.",
              type
            ));
      var eventRegistry = {
        registrationNameDependencies: registrationNameDependencies,
        possibleRegistrationNames: possibleRegistrationNames
      };
      isCustomElement(type) ||
        "string" === typeof props.is ||
        warnUnknownProperties(type, props, eventRegistry);
      props.contentEditable &&
        !props.suppressContentEditableWarning &&
        null != props.children &&
        console.error(
          "A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional."
        );
    }
    function warnForPropDifference(
      propName,
      serverValue,
      clientValue,
      serverDifferences
    ) {
      serverValue !== clientValue &&
        ((clientValue = normalizeMarkupForTextOrAttribute(clientValue)),
        normalizeMarkupForTextOrAttribute(serverValue) !== clientValue &&
          (serverDifferences[propName] = serverValue));
    }
    function warnForExtraAttributes(
      domElement,
      attributeNames,
      serverDifferences
    ) {
      attributeNames.forEach(function (attributeName) {
        serverDifferences[getPropNameFromAttributeName(attributeName)] =
          "style" === attributeName
            ? getStylesObjectFromElement(domElement)
            : domElement.getAttribute(attributeName);
      });
    }
    function warnForInvalidEventListener(registrationName, listener) {
      !1 === listener
        ? console.error(
            "Expected `%s` listener to be a function, instead got `false`.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.",
            registrationName,
            registrationName,
            registrationName
          )
        : console.error(
            "Expected `%s` listener to be a function, instead got a value of `%s` type.",
            registrationName,
            typeof listener
          );
    }
    function normalizeHTML(parent, html) {
      parent =
        parent.namespaceURI === MATH_NAMESPACE ||
        parent.namespaceURI === SVG_NAMESPACE
          ? parent.ownerDocument.createElementNS(
              parent.namespaceURI,
              parent.tagName
            )
          : parent.ownerDocument.createElement(parent.tagName);
      parent.innerHTML = html;
      return parent.innerHTML;
    }
    function normalizeMarkupForTextOrAttribute(markup) {
      willCoercionThrow(markup) &&
        (console.error(
          "The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before using it here.",
          typeName(markup)
        ),
        testStringCoercion(markup));
      return ("string" === typeof markup ? markup : "" + markup)
        .replace(NORMALIZE_NEWLINES_REGEX, "\n")
        .replace(NORMALIZE_NULL_AND_REPLACEMENT_REGEX, "");
    }
    function checkForUnmatchedText(serverText, clientText) {
      clientText = normalizeMarkupForTextOrAttribute(clientText);
      return normalizeMarkupForTextOrAttribute(serverText) === clientText
        ? !0
        : !1;
    }
    function setProp(domElement, tag, key, value, props, prevValue) {
      switch (key) {
        case "children":
          if ("string" === typeof value)
            validateTextNesting(value, tag, !1),
              "body" === tag ||
                ("textarea" === tag && "" === value) ||
                setTextContent(domElement, value);
          else if ("number" === typeof value || "bigint" === typeof value)
            validateTextNesting("" + value, tag, !1),
              "body" !== tag && setTextContent(domElement, "" + value);
          break;
        case "className":
          setValueForKnownAttribute(domElement, "class", value);
          break;
        case "tabIndex":
          setValueForKnownAttribute(domElement, "tabindex", value);
          break;
        case "dir":
        case "role":
        case "viewBox":
        case "width":
        case "height":
          setValueForKnownAttribute(domElement, key, value);
          break;
        case "style":
          setValueForStyles(domElement, value, prevValue);
          break;
        case "data":
          if ("object" !== tag) {
            setValueForKnownAttribute(domElement, "data", value);
            break;
          }
        case "src":
        case "href":
          if ("" === value && ("a" !== tag || "href" !== key)) {
            "src" === key
              ? console.error(
                  'An empty string ("") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
                  key,
                  key
                )
              : console.error(
                  'An empty string ("") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
                  key,
                  key
                );
            domElement.removeAttribute(key);
            break;
          }
          if (
            null == value ||
            "function" === typeof value ||
            "symbol" === typeof value ||
            "boolean" === typeof value
          ) {
            domElement.removeAttribute(key);
            break;
          }
          checkAttributeStringCoercion(value, key);
          value = sanitizeURL("" + value);
          domElement.setAttribute(key, value);
          break;
        case "action":
        case "formAction":
          null != value &&
            ("form" === tag
              ? "formAction" === key
                ? console.error(
                    "You can only pass the formAction prop to <input> or <button>. Use the action prop on <form>."
                  )
                : "function" === typeof value &&
                  ((null == props.encType && null == props.method) ||
                    didWarnFormActionMethod ||
                    ((didWarnFormActionMethod = !0),
                    console.error(
                      "Cannot specify a encType or method for a form that specifies a function as the action. React provides those automatically. They will get overridden."
                    )),
                  null == props.target ||
                    didWarnFormActionTarget ||
                    ((didWarnFormActionTarget = !0),
                    console.error(
                      "Cannot specify a target for a form that specifies a function as the action. The function will always be executed in the same window."
                    )))
              : "input" === tag || "button" === tag
                ? "action" === key
                  ? console.error(
                      "You can only pass the action prop to <form>. Use the formAction prop on <input> or <button>."
                    )
                  : "input" !== tag ||
                      "submit" === props.type ||
                      "image" === props.type ||
                      didWarnFormActionType
                    ? "button" !== tag ||
                      null == props.type ||
                      "submit" === props.type ||
                      didWarnFormActionType
                      ? "function" === typeof value &&
                        (null == props.name ||
                          didWarnFormActionName ||
                          ((didWarnFormActionName = !0),
                          console.error(
                            'Cannot specify a "name" prop for a button that specifies a function as a formAction. React needs it to encode which action should be invoked. It will get overridden.'
                          )),
                        (null == props.formEncType &&
                          null == props.formMethod) ||
                          didWarnFormActionMethod ||
                          ((didWarnFormActionMethod = !0),
                          console.error(
                            "Cannot specify a formEncType or formMethod for a button that specifies a function as a formAction. React provides those automatically. They will get overridden."
                          )),
                        null == props.formTarget ||
                          didWarnFormActionTarget ||
                          ((didWarnFormActionTarget = !0),
                          console.error(
                            "Cannot specify a formTarget for a button that specifies a function as a formAction. The function will always be executed in the same window."
                          )))
                      : ((didWarnFormActionType = !0),
                        console.error(
                          'A button can only specify a formAction along with type="submit" or no type.'
                        ))
                    : ((didWarnFormActionType = !0),
                      console.error(
                        'An input can only specify a formAction along with type="submit" or type="image".'
                      ))
                : "action" === key
                  ? console.error(
                      "You can only pass the action prop to <form>."
                    )
                  : console.error(
                      "You can only pass the formAction prop to <input> or <button>."
                    ));
          if ("function" === typeof value) {
            domElement.setAttribute(
              key,
              "javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')"
            );
            break;
          } else
            "function" === typeof prevValue &&
              ("formAction" === key
                ? ("input" !== tag &&
                    setProp(domElement, tag, "name", props.name, props, null),
                  setProp(
                    domElement,
                    tag,
                    "formEncType",
                    props.formEncType,
                    props,
                    null
                  ),
                  setProp(
                    domElement,
                    tag,
                    "formMethod",
                    props.formMethod,
                    props,
                    null
                  ),
                  setProp(
                    domElement,
                    tag,
                    "formTarget",
                    props.formTarget,
                    props,
                    null
                  ))
                : (setProp(
                    domElement,
                    tag,
                    "encType",
                    props.encType,
                    props,
                    null
                  ),
                  setProp(domElement, tag, "method", props.method, props, null),
                  setProp(
                    domElement,
                    tag,
                    "target",
                    props.target,
                    props,
                    null
                  )));
          if (
            null == value ||
            "symbol" === typeof value ||
            "boolean" === typeof value
          ) {
            domElement.removeAttribute(key);
            break;
          }
          checkAttributeStringCoercion(value, key);
          value = sanitizeURL("" + value);
          domElement.setAttribute(key, value);
          break;
        case "onClick":
          null != value &&
            ("function" !== typeof value &&
              warnForInvalidEventListener(key, value),
            (domElement.onclick = noop$1));
          break;
        case "onScroll":
          null != value &&
            ("function" !== typeof value &&
              warnForInvalidEventListener(key, value),
            listenToNonDelegatedEvent("scroll", domElement));
          break;
        case "onScrollEnd":
          null != value &&
            ("function" !== typeof value &&
              warnForInvalidEventListener(key, value),
            listenToNonDelegatedEvent("scrollend", domElement));
          break;
        case "dangerouslySetInnerHTML":
          if (null != value) {
            if ("object" !== typeof value || !("__html" in value))
              throw Error(
                "`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information."
              );
            key = value.__html;
            if (null != key) {
              if (null != props.children)
                throw Error(
                  "Can only set one of `children` or `props.dangerouslySetInnerHTML`."
                );
              domElement.innerHTML = key;
            }
          }
          break;
        case "multiple":
          domElement.multiple =
            value && "function" !== typeof value && "symbol" !== typeof value;
          break;
        case "muted":
          domElement.muted =
            value && "function" !== typeof value && "symbol" !== typeof value;
          break;
        case "suppressContentEditableWarning":
        case "suppressHydrationWarning":
        case "defaultValue":
        case "defaultChecked":
        case "innerHTML":
        case "ref":
          break;
        case "autoFocus":
          break;
        case "xlinkHref":
          if (
            null == value ||
            "function" === typeof value ||
            "boolean" === typeof value ||
            "symbol" === typeof value
          ) {
            domElement.removeAttribute("xlink:href");
            break;
          }
          checkAttributeStringCoercion(value, key);
          key = sanitizeURL("" + value);
          domElement.setAttributeNS(xlinkNamespace, "xlink:href", key);
          break;
        case "contentEditable":
        case "spellCheck":
        case "draggable":
        case "value":
        case "autoReverse":
        case "externalResourcesRequired":
        case "focusable":
        case "preserveAlpha":
          null != value &&
          "function" !== typeof value &&
          "symbol" !== typeof value
            ? (checkAttributeStringCoercion(value, key),
              domElement.setAttribute(key, "" + value))
            : domElement.removeAttribute(key);
          break;
        case "inert":
          "" !== value ||
            didWarnForNewBooleanPropsWithEmptyValue[key] ||
            ((didWarnForNewBooleanPropsWithEmptyValue[key] = !0),
            console.error(
              "Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",
              key
            ));
        case "allowFullScreen":
        case "async":
        case "autoPlay":
        case "controls":
        case "default":
        case "defer":
        case "disabled":
        case "disablePictureInPicture":
        case "disableRemotePlayback":
        case "formNoValidate":
        case "hidden":
        case "loop":
        case "noModule":
        case "noValidate":
        case "open":
        case "playsInline":
        case "readOnly":
        case "required":
        case "reversed":
        case "scoped":
        case "seamless":
        case "itemScope":
          value && "function" !== typeof value && "symbol" !== typeof value
            ? domElement.setAttribute(key, "")
            : domElement.removeAttribute(key);
          break;
        case "capture":
        case "download":
          !0 === value
            ? domElement.setAttribute(key, "")
            : !1 !== value &&
                null != value &&
                "function" !== typeof value &&
                "symbol" !== typeof value
              ? (checkAttributeStringCoercion(value, key),
                domElement.setAttribute(key, value))
              : domElement.removeAttribute(key);
          break;
        case "cols":
        case "rows":
        case "size":
        case "span":
          null != value &&
          "function" !== typeof value &&
          "symbol" !== typeof value &&
          !isNaN(value) &&
          1 <= value
            ? (checkAttributeStringCoercion(value, key),
              domElement.setAttribute(key, value))
            : domElement.removeAttribute(key);
          break;
        case "rowSpan":
        case "start":
          null == value ||
          "function" === typeof value ||
          "symbol" === typeof value ||
          isNaN(value)
            ? domElement.removeAttribute(key)
            : (checkAttributeStringCoercion(value, key),
              domElement.setAttribute(key, value));
          break;
        case "popover":
          listenToNonDelegatedEvent("beforetoggle", domElement);
          listenToNonDelegatedEvent("toggle", domElement);
          setValueForAttribute(domElement, "popover", value);
          break;
        case "xlinkActuate":
          setValueForNamespacedAttribute(
            domElement,
            xlinkNamespace,
            "xlink:actuate",
            value
          );
          break;
        case "xlinkArcrole":
          setValueForNamespacedAttribute(
            domElement,
            xlinkNamespace,
            "xlink:arcrole",
            value
          );
          break;
        case "xlinkRole":
          setValueForNamespacedAttribute(
            domElement,
            xlinkNamespace,
            "xlink:role",
            value
          );
          break;
        case "xlinkShow":
          setValueForNamespacedAttribute(
            domElement,
            xlinkNamespace,
            "xlink:show",
            value
          );
          break;
        case "xlinkTitle":
          setValueForNamespacedAttribute(
            domElement,
            xlinkNamespace,
            "xlink:title",
            value
          );
          break;
        case "xlinkType":
          setValueForNamespacedAttribute(
            domElement,
            xlinkNamespace,
            "xlink:type",
            value
          );
          break;
        case "xmlBase":
          setValueForNamespacedAttribute(
            domElement,
            xmlNamespace,
            "xml:base",
            value
          );
          break;
        case "xmlLang":
          setValueForNamespacedAttribute(
            domElement,
            xmlNamespace,
            "xml:lang",
            value
          );
          break;
        case "xmlSpace":
          setValueForNamespacedAttribute(
            domElement,
            xmlNamespace,
            "xml:space",
            value
          );
          break;
        case "is":
          null != prevValue &&
            console.error(
              'Cannot update the "is" prop after it has been initialized.'
            );
          setValueForAttribute(domElement, "is", value);
          break;
        case "innerText":
        case "textContent":
          break;
        case "popoverTarget":
          didWarnPopoverTargetObject ||
            null == value ||
            "object" !== typeof value ||
            ((didWarnPopoverTargetObject = !0),
            console.error(
              "The `popoverTarget` prop expects the ID of an Element as a string. Received %s instead.",
              value
            ));
        default:
          !(2 < key.length) ||
          ("o" !== key[0] && "O" !== key[0]) ||
          ("n" !== key[1] && "N" !== key[1])
            ? ((key = getAttributeAlias(key)),
              setValueForAttribute(domElement, key, value))
            : registrationNameDependencies.hasOwnProperty(key) &&
              null != value &&
              "function" !== typeof value &&
              warnForInvalidEventListener(key, value);
      }
    }
    function setPropOnCustomElement(
      domElement,
      tag,
      key,
      value,
      props,
      prevValue
    ) {
      switch (key) {
        case "style":
          setValueForStyles(domElement, value, prevValue);
          break;
        case "dangerouslySetInnerHTML":
          if (null != value) {
            if ("object" !== typeof value || !("__html" in value))
              throw Error(
                "`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information."
              );
            key = value.__html;
            if (null != key) {
              if (null != props.children)
                throw Error(
                  "Can only set one of `children` or `props.dangerouslySetInnerHTML`."
                );
              domElement.innerHTML = key;
            }
          }
          break;
        case "children":
          "string" === typeof value
            ? setTextContent(domElement, value)
            : ("number" === typeof value || "bigint" === typeof value) &&
              setTextContent(domElement, "" + value);
          break;
        case "onScroll":
          null != value &&
            ("function" !== typeof value &&
              warnForInvalidEventListener(key, value),
            listenToNonDelegatedEvent("scroll", domElement));
          break;
        case "onScrollEnd":
          null != value &&
            ("function" !== typeof value &&
              warnForInvalidEventListener(key, value),
            listenToNonDelegatedEvent("scrollend", domElement));
          break;
        case "onClick":
          null != value &&
            ("function" !== typeof value &&
              warnForInvalidEventListener(key, value),
            (domElement.onclick = noop$1));
          break;
        case "suppressContentEditableWarning":
        case "suppressHydrationWarning":
        case "innerHTML":
        case "ref":
          break;
        case "innerText":
        case "textContent":
          break;
        default:
          if (registrationNameDependencies.hasOwnProperty(key))
            null != value &&
              "function" !== typeof value &&
              warnForInvalidEventListener(key, value);
          else
            a: {
              if (
                "o" === key[0] &&
                "n" === key[1] &&
                ((props = key.endsWith("Capture")),
                (tag = key.slice(2, props ? key.length - 7 : void 0)),
                (prevValue = domElement[internalPropsKey] || null),
                (prevValue = null != prevValue ? prevValue[key] : null),
                "function" === typeof prevValue &&
                  domElement.removeEventListener(tag, prevValue, props),
                "function" === typeof value)
              ) {
                "function" !== typeof prevValue &&
                  null !== prevValue &&
                  (key in domElement
                    ? (domElement[key] = null)
                    : domElement.hasAttribute(key) &&
                      domElement.removeAttribute(key));
                domElement.addEventListener(tag, value, props);
                break a;
              }
              key in domElement
                ? (domElement[key] = value)
                : !0 === value
                  ? domElement.setAttribute(key, "")
                  : setValueForAttribute(domElement, key, value);
            }
      }
    }
    function setInitialProperties(domElement, tag, props) {
      validatePropertiesInDevelopment(tag, props);
      switch (tag) {
        case "div":
        case "span":
        case "svg":
        case "path":
        case "a":
        case "g":
        case "p":
        case "li":
          break;
        case "img":
          listenToNonDelegatedEvent("error", domElement);
          listenToNonDelegatedEvent("load", domElement);
          var hasSrc = !1,
            hasSrcSet = !1,
            propKey;
          for (propKey in props)
            if (props.hasOwnProperty(propKey)) {
              var propValue = props[propKey];
              if (null != propValue)
                switch (propKey) {
                  case "src":
                    hasSrc = !0;
                    break;
                  case "srcSet":
                    hasSrcSet = !0;
                    break;
                  case "children":
                  case "dangerouslySetInnerHTML":
                    throw Error(
                      tag +
                        " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
                    );
                  default:
                    setProp(domElement, tag, propKey, propValue, props, null);
                }
            }
          hasSrcSet &&
            setProp(domElement, tag, "srcSet", props.srcSet, props, null);
          hasSrc && setProp(domElement, tag, "src", props.src, props, null);
          return;
        case "input":
          checkControlledValueProps("input", props);
          listenToNonDelegatedEvent("invalid", domElement);
          var defaultValue = (propKey = propValue = hasSrcSet = null),
            checked = null,
            defaultChecked = null;
          for (hasSrc in props)
            if (props.hasOwnProperty(hasSrc)) {
              var _propValue = props[hasSrc];
              if (null != _propValue)
                switch (hasSrc) {
                  case "name":
                    hasSrcSet = _propValue;
                    break;
                  case "type":
                    propValue = _propValue;
                    break;
                  case "checked":
                    checked = _propValue;
                    break;
                  case "defaultChecked":
                    defaultChecked = _propValue;
                    break;
                  case "value":
                    propKey = _propValue;
                    break;
                  case "defaultValue":
                    defaultValue = _propValue;
                    break;
                  case "children":
                  case "dangerouslySetInnerHTML":
                    if (null != _propValue)
                      throw Error(
                        tag +
                          " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
                      );
                    break;
                  default:
                    setProp(domElement, tag, hasSrc, _propValue, props, null);
                }
            }
          validateInputProps(domElement, props);
          initInput(
            domElement,
            propKey,
            defaultValue,
            checked,
            defaultChecked,
            propValue,
            hasSrcSet,
            !1
          );
          return;
        case "select":
          checkControlledValueProps("select", props);
          listenToNonDelegatedEvent("invalid", domElement);
          hasSrc = propValue = propKey = null;
          for (hasSrcSet in props)
            if (
              props.hasOwnProperty(hasSrcSet) &&
              ((defaultValue = props[hasSrcSet]), null != defaultValue)
            )
              switch (hasSrcSet) {
                case "value":
                  propKey = defaultValue;
                  break;
                case "defaultValue":
                  propValue = defaultValue;
                  break;
                case "multiple":
                  hasSrc = defaultValue;
                default:
                  setProp(
                    domElement,
                    tag,
                    hasSrcSet,
                    defaultValue,
                    props,
                    null
                  );
              }
          validateSelectProps(domElement, props);
          tag = propKey;
          props = propValue;
          domElement.multiple = !!hasSrc;
          null != tag
            ? updateOptions(domElement, !!hasSrc, tag, !1)
            : null != props && updateOptions(domElement, !!hasSrc, props, !0);
          return;
        case "textarea":
          checkControlledValueProps("textarea", props);
          listenToNonDelegatedEvent("invalid", domElement);
          propKey = hasSrcSet = hasSrc = null;
          for (propValue in props)
            if (
              props.hasOwnProperty(propValue) &&
              ((defaultValue = props[propValue]), null != defaultValue)
            )
              switch (propValue) {
                case "value":
                  hasSrc = defaultValue;
                  break;
                case "defaultValue":
                  hasSrcSet = defaultValue;
                  break;
                case "children":
                  propKey = defaultValue;
                  break;
                case "dangerouslySetInnerHTML":
                  if (null != defaultValue)
                    throw Error(
                      "`dangerouslySetInnerHTML` does not make sense on <textarea>."
                    );
                  break;
                default:
                  setProp(
                    domElement,
                    tag,
                    propValue,
                    defaultValue,
                    props,
                    null
                  );
              }
          validateTextareaProps(domElement, props);
          initTextarea(domElement, hasSrc, hasSrcSet, propKey);
          return;
        case "option":
          validateOptionProps(domElement, props);
          for (checked in props)
            if (
              props.hasOwnProperty(checked) &&
              ((hasSrc = props[checked]), null != hasSrc)
            )
              switch (checked) {
                case "selected":
                  domElement.selected =
                    hasSrc &&
                    "function" !== typeof hasSrc &&
                    "symbol" !== typeof hasSrc;
                  break;
                default:
                  setProp(domElement, tag, checked, hasSrc, props, null);
              }
          return;
        case "dialog":
          listenToNonDelegatedEvent("beforetoggle", domElement);
          listenToNonDelegatedEvent("toggle", domElement);
          listenToNonDelegatedEvent("cancel", domElement);
          listenToNonDelegatedEvent("close", domElement);
          break;
        case "iframe":
        case "object":
          listenToNonDelegatedEvent("load", domElement);
          break;
        case "video":
        case "audio":
          for (hasSrc = 0; hasSrc < mediaEventTypes.length; hasSrc++)
            listenToNonDelegatedEvent(mediaEventTypes[hasSrc], domElement);
          break;
        case "image":
          listenToNonDelegatedEvent("error", domElement);
          listenToNonDelegatedEvent("load", domElement);
          break;
        case "details":
          listenToNonDelegatedEvent("toggle", domElement);
          break;
        case "embed":
        case "source":
        case "link":
          listenToNonDelegatedEvent("error", domElement),
            listenToNonDelegatedEvent("load", domElement);
        case "area":
        case "base":
        case "br":
        case "col":
        case "hr":
        case "keygen":
        case "meta":
        case "param":
        case "track":
        case "wbr":
        case "menuitem":
          for (defaultChecked in props)
            if (
              props.hasOwnProperty(defaultChecked) &&
              ((hasSrc = props[defaultChecked]), null != hasSrc)
            )
              switch (defaultChecked) {
                case "children":
                case "dangerouslySetInnerHTML":
                  throw Error(
                    tag +
                      " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
                  );
                default:
                  setProp(domElement, tag, defaultChecked, hasSrc, props, null);
              }
          return;
        default:
          if (isCustomElement(tag)) {
            for (_propValue in props)
              props.hasOwnProperty(_propValue) &&
                ((hasSrc = props[_propValue]),
                void 0 !== hasSrc &&
                  setPropOnCustomElement(
                    domElement,
                    tag,
                    _propValue,
                    hasSrc,
                    props,
                    void 0
                  ));
            return;
          }
      }
      for (defaultValue in props)
        props.hasOwnProperty(defaultValue) &&
          ((hasSrc = props[defaultValue]),
          null != hasSrc &&
            setProp(domElement, tag, defaultValue, hasSrc, props, null));
    }
    function updateProperties(domElement, tag, lastProps, nextProps) {
      validatePropertiesInDevelopment(tag, nextProps);
      switch (tag) {
        case "div":
        case "span":
        case "svg":
        case "path":
        case "a":
        case "g":
        case "p":
        case "li":
          break;
        case "input":
          var name = null,
            type = null,
            value = null,
            defaultValue = null,
            lastDefaultValue = null,
            checked = null,
            defaultChecked = null;
          for (propKey in lastProps) {
            var lastProp = lastProps[propKey];
            if (lastProps.hasOwnProperty(propKey) && null != lastProp)
              switch (propKey) {
                case "checked":
                  break;
                case "value":
                  break;
                case "defaultValue":
                  lastDefaultValue = lastProp;
                default:
                  nextProps.hasOwnProperty(propKey) ||
                    setProp(
                      domElement,
                      tag,
                      propKey,
                      null,
                      nextProps,
                      lastProp
                    );
              }
          }
          for (var _propKey8 in nextProps) {
            var propKey = nextProps[_propKey8];
            lastProp = lastProps[_propKey8];
            if (
              nextProps.hasOwnProperty(_propKey8) &&
              (null != propKey || null != lastProp)
            )
              switch (_propKey8) {
                case "type":
                  type = propKey;
                  break;
                case "name":
                  name = propKey;
                  break;
                case "checked":
                  checked = propKey;
                  break;
                case "defaultChecked":
                  defaultChecked = propKey;
                  break;
                case "value":
                  value = propKey;
                  break;
                case "defaultValue":
                  defaultValue = propKey;
                  break;
                case "children":
                case "dangerouslySetInnerHTML":
                  if (null != propKey)
                    throw Error(
                      tag +
                        " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
                    );
                  break;
                default:
                  propKey !== lastProp &&
                    setProp(
                      domElement,
                      tag,
                      _propKey8,
                      propKey,
                      nextProps,
                      lastProp
                    );
              }
          }
          tag =
            "checkbox" === lastProps.type || "radio" === lastProps.type
              ? null != lastProps.checked
              : null != lastProps.value;
          nextProps =
            "checkbox" === nextProps.type || "radio" === nextProps.type
              ? null != nextProps.checked
              : null != nextProps.value;
          tag ||
            !nextProps ||
            didWarnUncontrolledToControlled ||
            (console.error(
              "A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components"
            ),
            (didWarnUncontrolledToControlled = !0));
          !tag ||
            nextProps ||
            didWarnControlledToUncontrolled ||
            (console.error(
              "A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components"
            ),
            (didWarnControlledToUncontrolled = !0));
          updateInput(
            domElement,
            value,
            defaultValue,
            lastDefaultValue,
            checked,
            defaultChecked,
            type,
            name
          );
          return;
        case "select":
          propKey = value = defaultValue = _propKey8 = null;
          for (type in lastProps)
            if (
              ((lastDefaultValue = lastProps[type]),
              lastProps.hasOwnProperty(type) && null != lastDefaultValue)
            )
              switch (type) {
                case "value":
                  break;
                case "multiple":
                  propKey = lastDefaultValue;
                default:
                  nextProps.hasOwnProperty(type) ||
                    setProp(
                      domElement,
                      tag,
                      type,
                      null,
                      nextProps,
                      lastDefaultValue
                    );
              }
          for (name in nextProps)
            if (
              ((type = nextProps[name]),
              (lastDefaultValue = lastProps[name]),
              nextProps.hasOwnProperty(name) &&
                (null != type || null != lastDefaultValue))
            )
              switch (name) {
                case "value":
                  _propKey8 = type;
                  break;
                case "defaultValue":
                  defaultValue = type;
                  break;
                case "multiple":
                  value = type;
                default:
                  type !== lastDefaultValue &&
                    setProp(
                      domElement,
                      tag,
                      name,
                      type,
                      nextProps,
                      lastDefaultValue
                    );
              }
          nextProps = defaultValue;
          tag = value;
          lastProps = propKey;
          null != _propKey8
            ? updateOptions(domElement, !!tag, _propKey8, !1)
            : !!lastProps !== !!tag &&
              (null != nextProps
                ? updateOptions(domElement, !!tag, nextProps, !0)
                : updateOptions(domElement, !!tag, tag ? [] : "", !1));
          return;
        case "textarea":
          propKey = _propKey8 = null;
          for (defaultValue in lastProps)
            if (
              ((name = lastProps[defaultValue]),
              lastProps.hasOwnProperty(defaultValue) &&
                null != name &&
                !nextProps.hasOwnProperty(defaultValue))
            )
              switch (defaultValue) {
                case "value":
                  break;
                case "children":
                  break;
                default:
                  setProp(domElement, tag, defaultValue, null, nextProps, name);
              }
          for (value in nextProps)
            if (
              ((name = nextProps[value]),
              (type = lastProps[value]),
              nextProps.hasOwnProperty(value) && (null != name || null != type))
            )
              switch (value) {
                case "value":
                  _propKey8 = name;
                  break;
                case "defaultValue":
                  propKey = name;
                  break;
                case "children":
                  break;
                case "dangerouslySetInnerHTML":
                  if (null != name)
                    throw Error(
                      "`dangerouslySetInnerHTML` does not make sense on <textarea>."
                    );
                  break;
                default:
                  name !== type &&
                    setProp(domElement, tag, value, name, nextProps, type);
              }
          updateTextarea(domElement, _propKey8, propKey);
          return;
        case "option":
          for (var _propKey13 in lastProps)
            if (
              ((_propKey8 = lastProps[_propKey13]),
              lastProps.hasOwnProperty(_propKey13) &&
                null != _propKey8 &&
                !nextProps.hasOwnProperty(_propKey13))
            )
              switch (_propKey13) {
                case "selected":
                  domElement.selected = !1;
                  break;
                default:
                  setProp(
                    domElement,
                    tag,
                    _propKey13,
                    null,
                    nextProps,
                    _propKey8
                  );
              }
          for (lastDefaultValue in nextProps)
            if (
              ((_propKey8 = nextProps[lastDefaultValue]),
              (propKey = lastProps[lastDefaultValue]),
              nextProps.hasOwnProperty(lastDefaultValue) &&
                _propKey8 !== propKey &&
                (null != _propKey8 || null != propKey))
            )
              switch (lastDefaultValue) {
                case "selected":
                  domElement.selected =
                    _propKey8 &&
                    "function" !== typeof _propKey8 &&
                    "symbol" !== typeof _propKey8;
                  break;
                default:
                  setProp(
                    domElement,
                    tag,
                    lastDefaultValue,
                    _propKey8,
                    nextProps,
                    propKey
                  );
              }
          return;
        case "img":
        case "link":
        case "area":
        case "base":
        case "br":
        case "col":
        case "embed":
        case "hr":
        case "keygen":
        case "meta":
        case "param":
        case "source":
        case "track":
        case "wbr":
        case "menuitem":
          for (var _propKey15 in lastProps)
            (_propKey8 = lastProps[_propKey15]),
              lastProps.hasOwnProperty(_propKey15) &&
                null != _propKey8 &&
                !nextProps.hasOwnProperty(_propKey15) &&
                setProp(
                  domElement,
                  tag,
                  _propKey15,
                  null,
                  nextProps,
                  _propKey8
                );
          for (checked in nextProps)
            if (
              ((_propKey8 = nextProps[checked]),
              (propKey = lastProps[checked]),
              nextProps.hasOwnProperty(checked) &&
                _propKey8 !== propKey &&
                (null != _propKey8 || null != propKey))
            )
              switch (checked) {
                case "children":
                case "dangerouslySetInnerHTML":
                  if (null != _propKey8)
                    throw Error(
                      tag +
                        " is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`."
                    );
                  break;
                default:
                  setProp(
                    domElement,
                    tag,
                    checked,
                    _propKey8,
                    nextProps,
                    propKey
                  );
              }
          return;
        default:
          if (isCustomElement(tag)) {
            for (var _propKey17 in lastProps)
              (_propKey8 = lastProps[_propKey17]),
                lastProps.hasOwnProperty(_propKey17) &&
                  void 0 !== _propKey8 &&
                  !nextProps.hasOwnProperty(_propKey17) &&
                  setPropOnCustomElement(
                    domElement,
                    tag,
                    _propKey17,
                    void 0,
                    nextProps,
                    _propKey8
                  );
            for (defaultChecked in nextProps)
              (_propKey8 = nextProps[defaultChecked]),
                (propKey = lastProps[defaultChecked]),
                !nextProps.hasOwnProperty(defaultChecked) ||
                  _propKey8 === propKey ||
                  (void 0 === _propKey8 && void 0 === propKey) ||
                  setPropOnCustomElement(
                    domElement,
                    tag,
                    defaultChecked,
                    _propKey8,
                    nextProps,
                    propKey
                  );
            return;
          }
      }
      for (var _propKey19 in lastProps)
        (_propKey8 = lastProps[_propKey19]),
          lastProps.hasOwnProperty(_propKey19) &&
            null != _propKey8 &&
            !nextProps.hasOwnProperty(_propKey19) &&
            setProp(domElement, tag, _propKey19, null, nextProps, _propKey8);
      for (lastProp in nextProps)
        (_propKey8 = nextProps[lastProp]),
          (propKey = lastProps[lastProp]),
          !nextProps.hasOwnProperty(lastProp) ||
            _propKey8 === propKey ||
            (null == _propKey8 && null == propKey) ||
            setProp(domElement, tag, lastProp, _propKey8, nextProps, propKey);
    }
    function getPropNameFromAttributeName(attrName) {
      switch (attrName) {
        case "class":
          return "className";
        case "for":
          return "htmlFor";
        default:
          return attrName;
      }
    }
    function getStylesObjectFromElement(domElement) {
      var serverValueInObjectForm = {};
      domElement = domElement.style;
      for (var i = 0; i < domElement.length; i++) {
        var styleName = domElement[i];
        serverValueInObjectForm[styleName] =
          domElement.getPropertyValue(styleName);
      }
      return serverValueInObjectForm;
    }
    function diffHydratedStyles(domElement, value$jscomp$0, serverDifferences) {
      if (null != value$jscomp$0 && "object" !== typeof value$jscomp$0)
        console.error(
          "The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX."
        );
      else {
        var clientValue;
        var delimiter = (clientValue = ""),
          styleName;
        for (styleName in value$jscomp$0)
          if (value$jscomp$0.hasOwnProperty(styleName)) {
            var value = value$jscomp$0[styleName];
            null != value &&
              "boolean" !== typeof value &&
              "" !== value &&
              (0 === styleName.indexOf("--")
                ? (checkCSSPropertyStringCoercion(value, styleName),
                  (clientValue +=
                    delimiter + styleName + ":" + ("" + value).trim()))
                : "number" !== typeof value ||
                    0 === value ||
                    unitlessNumbers.has(styleName)
                  ? (checkCSSPropertyStringCoercion(value, styleName),
                    (clientValue +=
                      delimiter +
                      styleName
                        .replace(uppercasePattern, "-$1")
                        .toLowerCase()
                        .replace(msPattern$1, "-ms-") +
                      ":" +
                      ("" + value).trim()))
                  : (clientValue +=
                      delimiter +
                      styleName
                        .replace(uppercasePattern, "-$1")
                        .toLowerCase()
                        .replace(msPattern$1, "-ms-") +
                      ":" +
                      value +
                      "px"),
              (delimiter = ";"));
          }
        clientValue = clientValue || null;
        value$jscomp$0 = domElement.getAttribute("style");
        value$jscomp$0 !== clientValue &&
          ((clientValue = normalizeMarkupForTextOrAttribute(clientValue)),
          normalizeMarkupForTextOrAttribute(value$jscomp$0) !== clientValue &&
            (serverDifferences.style = getStylesObjectFromElement(domElement)));
      }
    }
    function hydrateAttribute(
      domElement,
      propKey,
      attributeName,
      value,
      extraAttributes,
      serverDifferences
    ) {
      extraAttributes.delete(attributeName);
      domElement = domElement.getAttribute(attributeName);
      if (null === domElement)
        switch (typeof value) {
          case "undefined":
          case "function":
          case "symbol":
          case "boolean":
            return;
        }
      else if (null != value)
        switch (typeof value) {
          case "function":
          case "symbol":
          case "boolean":
            break;
          default:
            if (
              (checkAttributeStringCoercion(value, propKey),
              domElement === "" + value)
            )
              return;
        }
      warnForPropDifference(propKey, domElement, value, serverDifferences);
    }
    function hydrateBooleanAttribute(
      domElement,
      propKey,
      attributeName,
      value,
      extraAttributes,
      serverDifferences
    ) {
      extraAttributes.delete(attributeName);
      domElement = domElement.getAttribute(attributeName);
      if (null === domElement) {
        switch (typeof value) {
          case "function":
          case "symbol":
            return;
        }
        if (!value) return;
      } else
        switch (typeof value) {
          case "function":
          case "symbol":
            break;
          default:
            if (value) return;
        }
      warnForPropDifference(propKey, domElement, value, serverDifferences);
    }
    function hydrateBooleanishAttribute(
      domElement,
      propKey,
      attributeName,
      value,
      extraAttributes,
      serverDifferences
    ) {
      extraAttributes.delete(attributeName);
      domElement = domElement.getAttribute(attributeName);
      if (null === domElement)
        switch (typeof value) {
          case "undefined":
          case "function":
          case "symbol":
            return;
        }
      else if (null != value)
        switch (typeof value) {
          case "function":
          case "symbol":
            break;
          default:
            if (
              (checkAttributeStringCoercion(value, attributeName),
              domElement === "" + value)
            )
              return;
        }
      warnForPropDifference(propKey, domElement, value, serverDifferences);
    }
    function hydrateNumericAttribute(
      domElement,
      propKey,
      attributeName,
      value,
      extraAttributes,
      serverDifferences
    ) {
      extraAttributes.delete(attributeName);
      domElement = domElement.getAttribute(attributeName);
      if (null === domElement)
        switch (typeof value) {
          case "undefined":
          case "function":
          case "symbol":
          case "boolean":
            return;
          default:
            if (isNaN(value)) return;
        }
      else if (null != value)
        switch (typeof value) {
          case "function":
          case "symbol":
          case "boolean":
            break;
          default:
            if (
              !isNaN(value) &&
              (checkAttributeStringCoercion(value, propKey),
              domElement === "" + value)
            )
              return;
        }
      warnForPropDifference(propKey, domElement, value, serverDifferences);
    }
    function hydrateSanitizedAttribute(
      domElement,
      propKey,
      attributeName,
      value,
      extraAttributes,
      serverDifferences
    ) {
      extraAttributes.delete(attributeName);
      domElement = domElement.getAttribute(attributeName);
      if (null === domElement)
        switch (typeof value) {
          case "undefined":
          case "function":
          case "symbol":
          case "boolean":
            return;
        }
      else if (null != value)
        switch (typeof value) {
          case "function":
          case "symbol":
          case "boolean":
            break;
          default:
            if (
              (checkAttributeStringCoercion(value, propKey),
              (attributeName = sanitizeURL("" + value)),
              domElement === attributeName)
            )
              return;
        }
      warnForPropDifference(propKey, domElement, value, serverDifferences);
    }
    function diffHydratedProperties(domElement, tag, props, hostContext) {
      for (
        var serverDifferences = {},
          extraAttributes = new Set(),
          attributes = domElement.attributes,
          i = 0;
        i < attributes.length;
        i++
      )
        switch (attributes[i].name.toLowerCase()) {
          case "value":
            break;
          case "checked":
            break;
          case "selected":
            break;
          default:
            extraAttributes.add(attributes[i].name);
        }
      if (isCustomElement(tag))
        for (var propKey in props) {
          if (props.hasOwnProperty(propKey)) {
            var value = props[propKey];
            if (null != value)
              if (registrationNameDependencies.hasOwnProperty(propKey))
                "function" !== typeof value &&
                  warnForInvalidEventListener(propKey, value);
              else if (!0 !== props.suppressHydrationWarning)
                switch (propKey) {
                  case "children":
                    ("string" !== typeof value && "number" !== typeof value) ||
                      warnForPropDifference(
                        "children",
                        domElement.textContent,
                        value,
                        serverDifferences
                      );
                    continue;
                  case "suppressContentEditableWarning":
                  case "suppressHydrationWarning":
                  case "defaultValue":
                  case "defaultChecked":
                  case "innerHTML":
                  case "ref":
                    continue;
                  case "dangerouslySetInnerHTML":
                    attributes = domElement.innerHTML;
                    value = value ? value.__html : void 0;
                    null != value &&
                      ((value = normalizeHTML(domElement, value)),
                      warnForPropDifference(
                        propKey,
                        attributes,
                        value,
                        serverDifferences
                      ));
                    continue;
                  case "style":
                    extraAttributes.delete(propKey);
                    diffHydratedStyles(domElement, value, serverDifferences);
                    continue;
                  case "offsetParent":
                  case "offsetTop":
                  case "offsetLeft":
                  case "offsetWidth":
                  case "offsetHeight":
                  case "isContentEditable":
                  case "outerText":
                  case "outerHTML":
                    extraAttributes.delete(propKey.toLowerCase());
                    console.error(
                      "Assignment to read-only property will result in a no-op: `%s`",
                      propKey
                    );
                    continue;
                  case "className":
                    extraAttributes.delete("class");
                    attributes = getValueForAttributeOnCustomComponent(
                      domElement,
                      "class",
                      value
                    );
                    warnForPropDifference(
                      "className",
                      attributes,
                      value,
                      serverDifferences
                    );
                    continue;
                  default:
                    hostContext.context === HostContextNamespaceNone &&
                    "svg" !== tag &&
                    "math" !== tag
                      ? extraAttributes.delete(propKey.toLowerCase())
                      : extraAttributes.delete(propKey),
                      (attributes = getValueForAttributeOnCustomComponent(
                        domElement,
                        propKey,
                        value
                      )),
                      warnForPropDifference(
                        propKey,
                        attributes,
                        value,
                        serverDifferences
                      );
                }
          }
        }
      else
        for (value in props)
          if (
            props.hasOwnProperty(value) &&
            ((propKey = props[value]), null != propKey)
          )
            if (registrationNameDependencies.hasOwnProperty(value))
              "function" !== typeof propKey &&
                warnForInvalidEventListener(value, propKey);
            else if (!0 !== props.suppressHydrationWarning)
              switch (value) {
                case "children":
                  ("string" !== typeof propKey &&
                    "number" !== typeof propKey) ||
                    warnForPropDifference(
                      "children",
                      domElement.textContent,
                      propKey,
                      serverDifferences
                    );
                  continue;
                case "suppressContentEditableWarning":
                case "suppressHydrationWarning":
                case "value":
                case "checked":
                case "selected":
                case "defaultValue":
                case "defaultChecked":
                case "innerHTML":
                case "ref":
                  continue;
                case "dangerouslySetInnerHTML":
                  attributes = domElement.innerHTML;
                  propKey = propKey ? propKey.__html : void 0;
                  null != propKey &&
                    ((propKey = normalizeHTML(domElement, propKey)),
                    attributes !== propKey &&
                      (serverDifferences[value] = { __html: attributes }));
                  continue;
                case "className":
                  hydrateAttribute(
                    domElement,
                    value,
                    "class",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "tabIndex":
                  hydrateAttribute(
                    domElement,
                    value,
                    "tabindex",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "style":
                  extraAttributes.delete(value);
                  diffHydratedStyles(domElement, propKey, serverDifferences);
                  continue;
                case "multiple":
                  extraAttributes.delete(value);
                  warnForPropDifference(
                    value,
                    domElement.multiple,
                    propKey,
                    serverDifferences
                  );
                  continue;
                case "muted":
                  extraAttributes.delete(value);
                  warnForPropDifference(
                    value,
                    domElement.muted,
                    propKey,
                    serverDifferences
                  );
                  continue;
                case "autoFocus":
                  extraAttributes.delete("autofocus");
                  warnForPropDifference(
                    value,
                    domElement.autofocus,
                    propKey,
                    serverDifferences
                  );
                  continue;
                case "data":
                  if ("object" !== tag) {
                    extraAttributes.delete(value);
                    attributes = domElement.getAttribute("data");
                    warnForPropDifference(
                      value,
                      attributes,
                      propKey,
                      serverDifferences
                    );
                    continue;
                  }
                case "src":
                case "href":
                  if (
                    !(
                      "" !== propKey ||
                      ("a" === tag && "href" === value) ||
                      ("object" === tag && "data" === value)
                    )
                  ) {
                    "src" === value
                      ? console.error(
                          'An empty string ("") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
                          value,
                          value
                        )
                      : console.error(
                          'An empty string ("") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.',
                          value,
                          value
                        );
                    continue;
                  }
                  hydrateSanitizedAttribute(
                    domElement,
                    value,
                    value,
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "action":
                case "formAction":
                  attributes = domElement.getAttribute(value);
                  if ("function" === typeof propKey) {
                    extraAttributes.delete(value.toLowerCase());
                    "formAction" === value
                      ? (extraAttributes.delete("name"),
                        extraAttributes.delete("formenctype"),
                        extraAttributes.delete("formmethod"),
                        extraAttributes.delete("formtarget"))
                      : (extraAttributes.delete("enctype"),
                        extraAttributes.delete("method"),
                        extraAttributes.delete("target"));
                    continue;
                  } else if (attributes === EXPECTED_FORM_ACTION_URL) {
                    extraAttributes.delete(value.toLowerCase());
                    warnForPropDifference(
                      value,
                      "function",
                      propKey,
                      serverDifferences
                    );
                    continue;
                  }
                  hydrateSanitizedAttribute(
                    domElement,
                    value,
                    value.toLowerCase(),
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xlinkHref":
                  hydrateSanitizedAttribute(
                    domElement,
                    value,
                    "xlink:href",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "contentEditable":
                  hydrateBooleanishAttribute(
                    domElement,
                    value,
                    "contenteditable",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "spellCheck":
                  hydrateBooleanishAttribute(
                    domElement,
                    value,
                    "spellcheck",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "draggable":
                case "autoReverse":
                case "externalResourcesRequired":
                case "focusable":
                case "preserveAlpha":
                  hydrateBooleanishAttribute(
                    domElement,
                    value,
                    value,
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "allowFullScreen":
                case "async":
                case "autoPlay":
                case "controls":
                case "default":
                case "defer":
                case "disabled":
                case "disablePictureInPicture":
                case "disableRemotePlayback":
                case "formNoValidate":
                case "hidden":
                case "loop":
                case "noModule":
                case "noValidate":
                case "open":
                case "playsInline":
                case "readOnly":
                case "required":
                case "reversed":
                case "scoped":
                case "seamless":
                case "itemScope":
                  hydrateBooleanAttribute(
                    domElement,
                    value,
                    value.toLowerCase(),
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "capture":
                case "download":
                  a: {
                    i = domElement;
                    var attributeName = (attributes = value),
                      serverDifferences$jscomp$0 = serverDifferences;
                    extraAttributes.delete(attributeName);
                    i = i.getAttribute(attributeName);
                    if (null === i)
                      switch (typeof propKey) {
                        case "undefined":
                        case "function":
                        case "symbol":
                          break a;
                        default:
                          if (!1 === propKey) break a;
                      }
                    else if (null != propKey)
                      switch (typeof propKey) {
                        case "function":
                        case "symbol":
                          break;
                        case "boolean":
                          if (!0 === propKey && "" === i) break a;
                          break;
                        default:
                          if (
                            (checkAttributeStringCoercion(propKey, attributes),
                            i === "" + propKey)
                          )
                            break a;
                      }
                    warnForPropDifference(
                      attributes,
                      i,
                      propKey,
                      serverDifferences$jscomp$0
                    );
                  }
                  continue;
                case "cols":
                case "rows":
                case "size":
                case "span":
                  a: {
                    i = domElement;
                    attributeName = attributes = value;
                    serverDifferences$jscomp$0 = serverDifferences;
                    extraAttributes.delete(attributeName);
                    i = i.getAttribute(attributeName);
                    if (null === i)
                      switch (typeof propKey) {
                        case "undefined":
                        case "function":
                        case "symbol":
                        case "boolean":
                          break a;
                        default:
                          if (isNaN(propKey) || 1 > propKey) break a;
                      }
                    else if (null != propKey)
                      switch (typeof propKey) {
                        case "function":
                        case "symbol":
                        case "boolean":
                          break;
                        default:
                          if (
                            !(isNaN(propKey) || 1 > propKey) &&
                            (checkAttributeStringCoercion(propKey, attributes),
                            i === "" + propKey)
                          )
                            break a;
                      }
                    warnForPropDifference(
                      attributes,
                      i,
                      propKey,
                      serverDifferences$jscomp$0
                    );
                  }
                  continue;
                case "rowSpan":
                  hydrateNumericAttribute(
                    domElement,
                    value,
                    "rowspan",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "start":
                  hydrateNumericAttribute(
                    domElement,
                    value,
                    value,
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xHeight":
                  hydrateAttribute(
                    domElement,
                    value,
                    "x-height",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xlinkActuate":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xlink:actuate",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xlinkArcrole":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xlink:arcrole",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xlinkRole":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xlink:role",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xlinkShow":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xlink:show",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xlinkTitle":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xlink:title",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xlinkType":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xlink:type",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xmlBase":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xml:base",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xmlLang":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xml:lang",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "xmlSpace":
                  hydrateAttribute(
                    domElement,
                    value,
                    "xml:space",
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                case "inert":
                  "" !== propKey ||
                    didWarnForNewBooleanPropsWithEmptyValue[value] ||
                    ((didWarnForNewBooleanPropsWithEmptyValue[value] = !0),
                    console.error(
                      "Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",
                      value
                    ));
                  hydrateBooleanAttribute(
                    domElement,
                    value,
                    value,
                    propKey,
                    extraAttributes,
                    serverDifferences
                  );
                  continue;
                default:
                  if (
                    !(2 < value.length) ||
                    ("o" !== value[0] && "O" !== value[0]) ||
                    ("n" !== value[1] && "N" !== value[1])
                  ) {
                    i = getAttributeAlias(value);
                    attributes = !1;
                    hostContext.context === HostContextNamespaceNone &&
                    "svg" !== tag &&
                    "math" !== tag
                      ? extraAttributes.delete(i.toLowerCase())
                      : ((attributeName = value.toLowerCase()),
                        (attributeName = possibleStandardNames.hasOwnProperty(
                          attributeName
                        )
                          ? possibleStandardNames[attributeName] || null
                          : null),
                        null !== attributeName &&
                          attributeName !== value &&
                          ((attributes = !0),
                          extraAttributes.delete(attributeName)),
                        extraAttributes.delete(i));
                    a: if (
                      ((attributeName = domElement),
                      (serverDifferences$jscomp$0 = i),
                      (i = propKey),
                      isAttributeNameSafe(serverDifferences$jscomp$0))
                    )
                      if (
                        attributeName.hasAttribute(serverDifferences$jscomp$0)
                      )
                        (attributeName = attributeName.getAttribute(
                          serverDifferences$jscomp$0
                        )),
                          checkAttributeStringCoercion(
                            i,
                            serverDifferences$jscomp$0
                          ),
                          (i = attributeName === "" + i ? i : attributeName);
                      else {
                        switch (typeof i) {
                          case "function":
                          case "symbol":
                            break a;
                          case "boolean":
                            if (
                              ((attributeName = serverDifferences$jscomp$0
                                .toLowerCase()
                                .slice(0, 5)),
                              "data-" !== attributeName &&
                                "aria-" !== attributeName)
                            )
                              break a;
                        }
                        i = void 0 === i ? void 0 : null;
                      }
                    else i = void 0;
                    attributes ||
                      warnForPropDifference(
                        value,
                        i,
                        propKey,
                        serverDifferences
                      );
                  }
              }
      0 < extraAttributes.size &&
        !0 !== props.suppressHydrationWarning &&
        warnForExtraAttributes(domElement, extraAttributes, serverDifferences);
      return 0 === Object.keys(serverDifferences).length
        ? null
        : serverDifferences;
    }
    function propNamesListJoin(list, combinator) {
      switch (list.length) {
        case 0:
          return "";
        case 1:
          return list[0];
        case 2:
          return list[0] + " " + combinator + " " + list[1];
        default:
          return (
            list.slice(0, -1).join(", ") +
            ", " +
            combinator +
            " " +
            list[list.length - 1]
          );
      }
    }
    function isLikelyStaticResource(initiatorType) {
      switch (initiatorType) {
        case "css":
        case "script":
        case "font":
        case "img":
        case "image":
        case "input":
        case "link":
          return !0;
        default:
          return !1;
      }
    }
    function estimateBandwidth() {
      if ("function" === typeof performance.getEntriesByType) {
        for (
          var count = 0,
            bits = 0,
            resourceEntries = performance.getEntriesByType("resource"),
            i = 0;
          i < resourceEntries.length;
          i++
        ) {
          var entry = resourceEntries[i],
            transferSize = entry.transferSize,
            initiatorType = entry.initiatorType,
            duration = entry.duration;
          if (
            transferSize &&
            duration &&
            isLikelyStaticResource(initiatorType)
          ) {
            initiatorType = 0;
            duration = entry.responseEnd;
            for (i += 1; i < resourceEntries.length; i++) {
              var overlapEntry = resourceEntries[i],
                overlapStartTime = overlapEntry.startTime;
              if (overlapStartTime > duration) break;
              var overlapTransferSize = overlapEntry.transferSize,
                overlapInitiatorType = overlapEntry.initiatorType;
              overlapTransferSize &&
                isLikelyStaticResource(overlapInitiatorType) &&
                ((overlapEntry = overlapEntry.responseEnd),
                (initiatorType +=
                  overlapTransferSize *
                  (overlapEntry < duration
                    ? 1
                    : (duration - overlapStartTime) /
                      (overlapEntry - overlapStartTime))));
            }
            --i;
            bits +=
              (8 * (transferSize + initiatorType)) / (entry.duration / 1e3);
            count++;
            if (10 < count) break;
          }
        }
        if (0 < count) return bits / count / 1e6;
      }
      return navigator.connection &&
        ((count = navigator.connection.downlink), "number" === typeof count)
        ? count
        : 5;
    }
    function getOwnerDocumentFromRootContainer(rootContainerElement) {
      return 9 === rootContainerElement.nodeType
        ? rootContainerElement
        : rootContainerElement.ownerDocument;
    }
    function getOwnHostContext(namespaceURI) {
      switch (namespaceURI) {
        case SVG_NAMESPACE:
          return HostContextNamespaceSvg;
        case MATH_NAMESPACE:
          return HostContextNamespaceMath;
        default:
          return HostContextNamespaceNone;
      }
    }
    function getChildHostContextProd(parentNamespace, type) {
      if (parentNamespace === HostContextNamespaceNone)
        switch (type) {
          case "svg":
            return HostContextNamespaceSvg;
          case "math":
            return HostContextNamespaceMath;
          default:
            return HostContextNamespaceNone;
        }
      return parentNamespace === HostContextNamespaceSvg &&
        "foreignObject" === type
        ? HostContextNamespaceNone
        : parentNamespace;
    }
    function shouldSetTextContent(type, props) {
      return (
        "textarea" === type ||
        "noscript" === type ||
        "string" === typeof props.children ||
        "number" === typeof props.children ||
        "bigint" === typeof props.children ||
        ("object" === typeof props.dangerouslySetInnerHTML &&
          null !== props.dangerouslySetInnerHTML &&
          null != props.dangerouslySetInnerHTML.__html)
      );
    }
    function shouldAttemptEagerTransition() {
      var event = window.event;
      if (event && "popstate" === event.type) {
        if (event === currentPopstateTransitionEvent) return !1;
        currentPopstateTransitionEvent = event;
        return !0;
      }
      currentPopstateTransitionEvent = null;
      return !1;
    }
    function resolveEventType() {
      var event = window.event;
      return event && event !== schedulerEvent ? event.type : null;
    }
    function resolveEventTimeStamp() {
      var event = window.event;
      return event && event !== schedulerEvent ? event.timeStamp : -1.1;
    }
    function handleErrorInNextTick(error) {
      setTimeout(function () {
        throw error;
      });
    }
    function commitMount(domElement, type, newProps) {
      switch (type) {
        case "button":
        case "input":
        case "select":
        case "textarea":
          newProps.autoFocus && domElement.focus();
          break;
        case "img":
          newProps.src
            ? (domElement.src = newProps.src)
            : newProps.srcSet && (domElement.srcset = newProps.srcSet);
      }
    }
    function commitHydratedInstance() {}
    function commitUpdate(domElement, type, oldProps, newProps) {
      updateProperties(domElement, type, oldProps, newProps);
      domElement[internalPropsKey] = newProps;
    }
    function resetTextContent(domElement) {
      setTextContent(domElement, "");
    }
    function commitTextUpdate(textInstance, oldText, newText) {
      textInstance.nodeValue = newText;
    }
    function warnForReactChildrenConflict(container) {
      if (!container.__reactWarnedAboutChildrenConflict) {
        var props = container[internalPropsKey] || null;
        if (null !== props) {
          var fiber = getInstanceFromNode(container);
          null !== fiber &&
            ("string" === typeof props.children ||
            "number" === typeof props.children
              ? ((container.__reactWarnedAboutChildrenConflict = !0),
                runWithFiberInDEV(fiber, function () {
                  console.error(
                    'Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "children" text content using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.'
                  );
                }))
              : null != props.dangerouslySetInnerHTML &&
                ((container.__reactWarnedAboutChildrenConflict = !0),
                runWithFiberInDEV(fiber, function () {
                  console.error(
                    'Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "dangerouslySetInnerHTML" using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.'
                  );
                })));
        }
      }
    }
    function isSingletonScope(type) {
      return "head" === type;
    }
    function removeChild(parentInstance, child) {
      parentInstance.removeChild(child);
    }
    function removeChildFromContainer(container, child) {
      (9 === container.nodeType
        ? container.body
        : "HTML" === container.nodeName
          ? container.ownerDocument.body
          : container
      ).removeChild(child);
    }
    function clearHydrationBoundary(parentInstance, hydrationInstance) {
      var node = hydrationInstance,
        depth = 0;
      do {
        var nextNode = node.nextSibling;
        parentInstance.removeChild(node);
        if (nextNode && 8 === nextNode.nodeType)
          if (
            ((node = nextNode.data),
            node === SUSPENSE_END_DATA || node === ACTIVITY_END_DATA)
          ) {
            if (0 === depth) {
              parentInstance.removeChild(nextNode);
              retryIfBlockedOn(hydrationInstance);
              return;
            }
            depth--;
          } else if (
            node === SUSPENSE_START_DATA ||
            node === SUSPENSE_PENDING_START_DATA ||
            node === SUSPENSE_QUEUED_START_DATA ||
            node === SUSPENSE_FALLBACK_START_DATA ||
            node === ACTIVITY_START_DATA
          )
            depth++;
          else if (node === PREAMBLE_CONTRIBUTION_HTML)
            releaseSingletonInstance(
              parentInstance.ownerDocument.documentElement
            );
          else if (node === PREAMBLE_CONTRIBUTION_HEAD) {
            node = parentInstance.ownerDocument.head;
            releaseSingletonInstance(node);
            for (var node$jscomp$0 = node.firstChild; node$jscomp$0; ) {
              var nextNode$jscomp$0 = node$jscomp$0.nextSibling,
                nodeName = node$jscomp$0.nodeName;
              node$jscomp$0[internalHoistableMarker] ||
                "SCRIPT" === nodeName ||
                "STYLE" === nodeName ||
                ("LINK" === nodeName &&
                  "stylesheet" === node$jscomp$0.rel.toLowerCase()) ||
                node.removeChild(node$jscomp$0);
              node$jscomp$0 = nextNode$jscomp$0;
            }
          } else
            node === PREAMBLE_CONTRIBUTION_BODY &&
              releaseSingletonInstance(parentInstance.ownerDocument.body);
        node = nextNode;
      } while (node);
      retryIfBlockedOn(hydrationInstance);
    }
    function hideOrUnhideDehydratedBoundary(suspenseInstance, isHidden) {
      var node = suspenseInstance;
      suspenseInstance = 0;
      do {
        var nextNode = node.nextSibling;
        1 === node.nodeType
          ? isHidden
            ? ((node._stashedDisplay = node.style.display),
              (node.style.display = "none"))
            : ((node.style.display = node._stashedDisplay || ""),
              "" === node.getAttribute("style") &&
                node.removeAttribute("style"))
          : 3 === node.nodeType &&
            (isHidden
              ? ((node._stashedText = node.nodeValue), (node.nodeValue = ""))
              : (node.nodeValue = node._stashedText || ""));
        if (nextNode && 8 === nextNode.nodeType)
          if (((node = nextNode.data), node === SUSPENSE_END_DATA))
            if (0 === suspenseInstance) break;
            else suspenseInstance--;
          else
            (node !== SUSPENSE_START_DATA &&
              node !== SUSPENSE_PENDING_START_DATA &&
              node !== SUSPENSE_QUEUED_START_DATA &&
              node !== SUSPENSE_FALLBACK_START_DATA) ||
              suspenseInstance++;
        node = nextNode;
      } while (node);
    }
    function hideDehydratedBoundary(suspenseInstance) {
      hideOrUnhideDehydratedBoundary(suspenseInstance, !0);
    }
    function hideInstance(instance) {
      instance = instance.style;
      "function" === typeof instance.setProperty
        ? instance.setProperty("display", "none", "important")
        : (instance.display = "none");
    }
    function hideTextInstance(textInstance) {
      textInstance.nodeValue = "";
    }
    function unhideDehydratedBoundary(dehydratedInstance) {
      hideOrUnhideDehydratedBoundary(dehydratedInstance, !1);
    }
    function unhideInstance(instance, props) {
      props = props[STYLE];
      props =
        void 0 !== props && null !== props && props.hasOwnProperty("display")
          ? props.display
          : null;
      instance.style.display =
        null == props || "boolean" === typeof props ? "" : ("" + props).trim();
    }
    function unhideTextInstance(textInstance, text) {
      textInstance.nodeValue = text;
    }
    function clearContainerSparingly(container) {
      var nextNode = container.firstChild;
      nextNode && 10 === nextNode.nodeType && (nextNode = nextNode.nextSibling);
      for (; nextNode; ) {
        var node = nextNode;
        nextNode = nextNode.nextSibling;
        switch (node.nodeName) {
          case "HTML":
          case "HEAD":
          case "BODY":
            clearContainerSparingly(node);
            detachDeletedInstance(node);
            continue;
          case "SCRIPT":
          case "STYLE":
            continue;
          case "LINK":
            if ("stylesheet" === node.rel.toLowerCase()) continue;
        }
        container.removeChild(node);
      }
    }
    function canHydrateInstance(instance, type, props, inRootOrSingleton) {
      for (; 1 === instance.nodeType; ) {
        var anyProps = props;
        if (instance.nodeName.toLowerCase() !== type.toLowerCase()) {
          if (
            !inRootOrSingleton &&
            ("INPUT" !== instance.nodeName || "hidden" !== instance.type)
          )
            break;
        } else if (!inRootOrSingleton)
          if ("input" === type && "hidden" === instance.type) {
            checkAttributeStringCoercion(anyProps.name, "name");
            var name = null == anyProps.name ? null : "" + anyProps.name;
            if (
              "hidden" === anyProps.type &&
              instance.getAttribute("name") === name
            )
              return instance;
          } else return instance;
        else if (!instance[internalHoistableMarker])
          switch (type) {
            case "meta":
              if (!instance.hasAttribute("itemprop")) break;
              return instance;
            case "link":
              name = instance.getAttribute("rel");
              if (
                "stylesheet" === name &&
                instance.hasAttribute("data-precedence")
              )
                break;
              else if (
                name !== anyProps.rel ||
                instance.getAttribute("href") !==
                  (null == anyProps.href || "" === anyProps.href
                    ? null
                    : anyProps.href) ||
                instance.getAttribute("crossorigin") !==
                  (null == anyProps.crossOrigin
                    ? null
                    : anyProps.crossOrigin) ||
                instance.getAttribute("title") !==
                  (null == anyProps.title ? null : anyProps.title)
              )
                break;
              return instance;
            case "style":
              if (instance.hasAttribute("data-precedence")) break;
              return instance;
            case "script":
              name = instance.getAttribute("src");
              if (
                (name !== (null == anyProps.src ? null : anyProps.src) ||
                  instance.getAttribute("type") !==
                    (null == anyProps.type ? null : anyProps.type) ||
                  instance.getAttribute("crossorigin") !==
                    (null == anyProps.crossOrigin
                      ? null
                      : anyProps.crossOrigin)) &&
                name &&
                instance.hasAttribute("async") &&
                !instance.hasAttribute("itemprop")
              )
                break;
              return instance;
            default:
              return instance;
          }
        instance = getNextHydratable(instance.nextSibling);
        if (null === instance) break;
      }
      return null;
    }
    function canHydrateTextInstance(instance, text, inRootOrSingleton) {
      if ("" === text) return null;
      for (; 3 !== instance.nodeType; ) {
        if (
          (1 !== instance.nodeType ||
            "INPUT" !== instance.nodeName ||
            "hidden" !== instance.type) &&
          !inRootOrSingleton
        )
          return null;
        instance = getNextHydratable(instance.nextSibling);
        if (null === instance) return null;
      }
      return instance;
    }
    function canHydrateHydrationBoundary(instance, inRootOrSingleton) {
      for (; 8 !== instance.nodeType; ) {
        if (
          (1 !== instance.nodeType ||
            "INPUT" !== instance.nodeName ||
            "hidden" !== instance.type) &&
          !inRootOrSingleton
        )
          return null;
        instance = getNextHydratable(instance.nextSibling);
        if (null === instance) return null;
      }
      return instance;
    }
    function isSuspenseInstancePending(instance) {
      return (
        instance.data === SUSPENSE_PENDING_START_DATA ||
        instance.data === SUSPENSE_QUEUED_START_DATA
      );
    }
    function isSuspenseInstanceFallback(instance) {
      return (
        instance.data === SUSPENSE_FALLBACK_START_DATA ||
        (instance.data === SUSPENSE_PENDING_START_DATA &&
          instance.ownerDocument.readyState !== DOCUMENT_READY_STATE_LOADING)
      );
    }
    function registerSuspenseInstanceRetry(instance, callback) {
      var ownerDocument = instance.ownerDocument;
      if (instance.data === SUSPENSE_QUEUED_START_DATA)
        instance._reactRetry = callback;
      else if (
        instance.data !== SUSPENSE_PENDING_START_DATA ||
        ownerDocument.readyState !== DOCUMENT_READY_STATE_LOADING
      )
        callback();
      else {
        var listener = function () {
          callback();
          ownerDocument.removeEventListener("DOMContentLoaded", listener);
        };
        ownerDocument.addEventListener("DOMContentLoaded", listener);
        instance._reactRetry = listener;
      }
    }
    function getNextHydratable(node) {
      for (; null != node; node = node.nextSibling) {
        var nodeType = node.nodeType;
        if (1 === nodeType || 3 === nodeType) break;
        if (8 === nodeType) {
          nodeType = node.data;
          if (
            nodeType === SUSPENSE_START_DATA ||
            nodeType === SUSPENSE_FALLBACK_START_DATA ||
            nodeType === SUSPENSE_PENDING_START_DATA ||
            nodeType === SUSPENSE_QUEUED_START_DATA ||
            nodeType === ACTIVITY_START_DATA ||
            nodeType === FORM_STATE_IS_MATCHING ||
            nodeType === FORM_STATE_IS_NOT_MATCHING
          )
            break;
          if (nodeType === SUSPENSE_END_DATA || nodeType === ACTIVITY_END_DATA)
            return null;
        }
      }
      return node;
    }
    function describeHydratableInstanceForDevWarnings(instance) {
      if (1 === instance.nodeType) {
        for (
          var JSCompiler_temp_const = instance.nodeName.toLowerCase(),
            serverDifferences = {},
            attributes = instance.attributes,
            i = 0;
          i < attributes.length;
          i++
        ) {
          var attr = attributes[i];
          serverDifferences[getPropNameFromAttributeName(attr.name)] =
            "style" === attr.name.toLowerCase()
              ? getStylesObjectFromElement(instance)
              : attr.value;
        }
        return { type: JSCompiler_temp_const, props: serverDifferences };
      }
      return 8 === instance.nodeType
        ? instance.data === ACTIVITY_START_DATA
          ? { type: "Activity", props: {} }
          : { type: "Suspense", props: {} }
        : instance.nodeValue;
    }
    function diffHydratedTextForDevWarnings(textInstance, text, parentProps) {
      return null === parentProps ||
        !0 !== parentProps[SUPPRESS_HYDRATION_WARNING]
        ? (textInstance.nodeValue === text
            ? (textInstance = null)
            : ((text = normalizeMarkupForTextOrAttribute(text)),
              (textInstance =
                normalizeMarkupForTextOrAttribute(textInstance.nodeValue) ===
                text
                  ? null
                  : textInstance.nodeValue)),
          textInstance)
        : null;
    }
    function getNextHydratableInstanceAfterHydrationBoundary(
      hydrationInstance
    ) {
      hydrationInstance = hydrationInstance.nextSibling;
      for (var depth = 0; hydrationInstance; ) {
        if (8 === hydrationInstance.nodeType) {
          var data = hydrationInstance.data;
          if (data === SUSPENSE_END_DATA || data === ACTIVITY_END_DATA) {
            if (0 === depth)
              return getNextHydratable(hydrationInstance.nextSibling);
            depth--;
          } else
            (data !== SUSPENSE_START_DATA &&
              data !== SUSPENSE_FALLBACK_START_DATA &&
              data !== SUSPENSE_PENDING_START_DATA &&
              data !== SUSPENSE_QUEUED_START_DATA &&
              data !== ACTIVITY_START_DATA) ||
              depth++;
        }
        hydrationInstance = hydrationInstance.nextSibling;
      }
      return null;
    }
    function getParentHydrationBoundary(targetInstance) {
      targetInstance = targetInstance.previousSibling;
      for (var depth = 0; targetInstance; ) {
        if (8 === targetInstance.nodeType) {
          var data = targetInstance.data;
          if (
            data === SUSPENSE_START_DATA ||
            data === SUSPENSE_FALLBACK_START_DATA ||
            data === SUSPENSE_PENDING_START_DATA ||
            data === SUSPENSE_QUEUED_START_DATA ||
            data === ACTIVITY_START_DATA
          ) {
            if (0 === depth) return targetInstance;
            depth--;
          } else
            (data !== SUSPENSE_END_DATA && data !== ACTIVITY_END_DATA) ||
              depth++;
        }
        targetInstance = targetInstance.previousSibling;
      }
      return null;
    }
    function commitHydratedContainer(container) {
      retryIfBlockedOn(container);
    }
    function commitHydratedActivityInstance(activityInstance) {
      retryIfBlockedOn(activityInstance);
    }
    function commitHydratedSuspenseInstance(suspenseInstance) {
      retryIfBlockedOn(suspenseInstance);
    }
    function resolveSingletonInstance(
      type,
      props,
      rootContainerInstance,
      hostContext,
      validateDOMNestingDev
    ) {
      validateDOMNestingDev &&
        validateDOMNesting(type, hostContext.ancestorInfo);
      props = getOwnerDocumentFromRootContainer(rootContainerInstance);
      switch (type) {
        case "html":
          type = props.documentElement;
          if (!type)
            throw Error(
              "React expected an <html> element (document.documentElement) to exist in the Document but one was not found. React never removes the documentElement for any Document it renders into so the cause is likely in some other script running on this page."
            );
          return type;
        case "head":
          type = props.head;
          if (!type)
            throw Error(
              "React expected a <head> element (document.head) to exist in the Document but one was not found. React never removes the head for any Document it renders into so the cause is likely in some other script running on this page."
            );
          return type;
        case "body":
          type = props.body;
          if (!type)
            throw Error(
              "React expected a <body> element (document.body) to exist in the Document but one was not found. React never removes the body for any Document it renders into so the cause is likely in some other script running on this page."
            );
          return type;
        default:
          throw Error(
            "resolveSingletonInstance was called with an element type that is not supported. This is a bug in React."
          );
      }
    }
    function acquireSingletonInstance(
      type,
      props,
      instance,
      internalInstanceHandle
    ) {
      if (
        !instance[internalContainerInstanceKey] &&
        getInstanceFromNode(instance)
      ) {
        var tagName = instance.tagName.toLowerCase();
        console.error(
          "You are mounting a new %s component when a previous one has not first unmounted. It is an error to render more than one %s component at a time and attributes and children of these components will likely fail in unpredictable ways. Please only render a single instance of <%s> and if you need to mount a new one, ensure any previous ones have unmounted first.",
          tagName,
          tagName,
          tagName
        );
      }
      switch (type) {
        case "html":
        case "head":
        case "body":
          break;
        default:
          console.error(
            "acquireSingletonInstance was called with an element type that is not supported. This is a bug in React."
          );
      }
      for (tagName = instance.attributes; tagName.length; )
        instance.removeAttributeNode(tagName[0]);
      setInitialProperties(instance, type, props);
      instance[internalInstanceKey] = internalInstanceHandle;
      instance[internalPropsKey] = props;
    }
    function releaseSingletonInstance(instance) {
      for (var attributes = instance.attributes; attributes.length; )
        instance.removeAttributeNode(attributes[0]);
      detachDeletedInstance(instance);
    }
    function getHoistableRoot(container) {
      return "function" === typeof container.getRootNode
        ? container.getRootNode()
        : 9 === container.nodeType
          ? container
          : container.ownerDocument;
    }
    function preconnectAs(rel, href, crossOrigin) {
      var ownerDocument = globalDocument;
      if (ownerDocument && "string" === typeof href && href) {
        var limitedEscapedHref =
          escapeSelectorAttributeValueInsideDoubleQuotes(href);
        limitedEscapedHref =
          'link[rel="' + rel + '"][href="' + limitedEscapedHref + '"]';
        "string" === typeof crossOrigin &&
          (limitedEscapedHref += '[crossorigin="' + crossOrigin + '"]');
        preconnectsSet.has(limitedEscapedHref) ||
          (preconnectsSet.add(limitedEscapedHref),
          (rel = { rel: rel, crossOrigin: crossOrigin, href: href }),
          null === ownerDocument.querySelector(limitedEscapedHref) &&
            ((href = ownerDocument.createElement("link")),
            setInitialProperties(href, "link", rel),
            markNodeAsHoistable(href),
            ownerDocument.head.appendChild(href)));
      }
    }
    function getResource(type, currentProps, pendingProps, currentResource) {
      var resourceRoot = (resourceRoot = rootInstanceStackCursor.current)
        ? getHoistableRoot(resourceRoot)
        : null;
      if (!resourceRoot)
        throw Error(
          '"resourceRoot" was expected to exist. This is a bug in React.'
        );
      switch (type) {
        case "meta":
        case "title":
          return null;
        case "style":
          return "string" === typeof pendingProps.precedence &&
            "string" === typeof pendingProps.href
            ? ((pendingProps = getStyleKey(pendingProps.href)),
              (currentProps =
                getResourcesFromRoot(resourceRoot).hoistableStyles),
              (currentResource = currentProps.get(pendingProps)),
              currentResource ||
                ((currentResource = {
                  type: "style",
                  instance: null,
                  count: 0,
                  state: null
                }),
                currentProps.set(pendingProps, currentResource)),
              currentResource)
            : { type: "void", instance: null, count: 0, state: null };
        case "link":
          if (
            "stylesheet" === pendingProps.rel &&
            "string" === typeof pendingProps.href &&
            "string" === typeof pendingProps.precedence
          ) {
            type = getStyleKey(pendingProps.href);
            var _styles = getResourcesFromRoot(resourceRoot).hoistableStyles,
              _resource = _styles.get(type);
            if (
              !_resource &&
              ((resourceRoot = resourceRoot.ownerDocument || resourceRoot),
              (_resource = {
                type: "stylesheet",
                instance: null,
                count: 0,
                state: { loading: NotLoaded, preload: null }
              }),
              _styles.set(type, _resource),
              (_styles = resourceRoot.querySelector(
                getStylesheetSelectorFromKey(type)
              )) &&
                !_styles._p &&
                ((_resource.instance = _styles),
                (_resource.state.loading = Loaded | Inserted)),
              !preloadPropsMap.has(type))
            ) {
              var preloadProps = {
                rel: "preload",
                as: "style",
                href: pendingProps.href,
                crossOrigin: pendingProps.crossOrigin,
                integrity: pendingProps.integrity,
                media: pendingProps.media,
                hrefLang: pendingProps.hrefLang,
                referrerPolicy: pendingProps.referrerPolicy
              };
              preloadPropsMap.set(type, preloadProps);
              _styles ||
                preloadStylesheet(
                  resourceRoot,
                  type,
                  preloadProps,
                  _resource.state
                );
            }
            if (currentProps && null === currentResource)
              throw (
                ((pendingProps =
                  "\n\n  - " +
                  describeLinkForResourceErrorDEV(currentProps) +
                  "\n  + " +
                  describeLinkForResourceErrorDEV(pendingProps)),
                Error(
                  "Expected <link> not to update to be updated to a stylesheet with precedence. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key." +
                    pendingProps
                ))
              );
            return _resource;
          }
          if (currentProps && null !== currentResource)
            throw (
              ((pendingProps =
                "\n\n  - " +
                describeLinkForResourceErrorDEV(currentProps) +
                "\n  + " +
                describeLinkForResourceErrorDEV(pendingProps)),
              Error(
                "Expected stylesheet with precedence to not be updated to a different kind of <link>. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key." +
                  pendingProps
              ))
            );
          return null;
        case "script":
          return (
            (currentProps = pendingProps.async),
            (pendingProps = pendingProps.src),
            "string" === typeof pendingProps &&
            currentProps &&
            "function" !== typeof currentProps &&
            "symbol" !== typeof currentProps
              ? ((pendingProps = getScriptKey(pendingProps)),
                (currentProps =
                  getResourcesFromRoot(resourceRoot).hoistableScripts),
                (currentResource = currentProps.get(pendingProps)),
                currentResource ||
                  ((currentResource = {
                    type: "script",
                    instance: null,
                    count: 0,
                    state: null
                  }),
                  currentProps.set(pendingProps, currentResource)),
                currentResource)
              : { type: "void", instance: null, count: 0, state: null }
          );
        default:
          throw Error(
            'getResource encountered a type it did not expect: "' +
              type +
              '". this is a bug in React.'
          );
      }
    }
    function describeLinkForResourceErrorDEV(props) {
      var describedProps = 0,
        description = "<link";
      "string" === typeof props.rel
        ? (describedProps++, (description += ' rel="' + props.rel + '"'))
        : hasOwnProperty.call(props, "rel") &&
          (describedProps++,
          (description +=
            ' rel="' +
            (null === props.rel ? "null" : "invalid type " + typeof props.rel) +
            '"'));
      "string" === typeof props.href
        ? (describedProps++, (description += ' href="' + props.href + '"'))
        : hasOwnProperty.call(props, "href") &&
          (describedProps++,
          (description +=
            ' href="' +
            (null === props.href
              ? "null"
              : "invalid type " + typeof props.href) +
            '"'));
      "string" === typeof props.precedence
        ? (describedProps++,
          (description += ' precedence="' + props.precedence + '"'))
        : hasOwnProperty.call(props, "precedence") &&
          (describedProps++,
          (description +=
            " precedence={" +
            (null === props.precedence
              ? "null"
              : "invalid type " + typeof props.precedence) +
            "}"));
      Object.getOwnPropertyNames(props).length > describedProps &&
        (description += " ...");
      return description + " />";
    }
    function getStyleKey(href) {
      return (
        'href="' + escapeSelectorAttributeValueInsideDoubleQuotes(href) + '"'
      );
    }
    function getStylesheetSelectorFromKey(key) {
      return 'link[rel="stylesheet"][' + key + "]";
    }
    function stylesheetPropsFromRawProps(rawProps) {
      return assign({}, rawProps, {
        "data-precedence": rawProps.precedence,
        precedence: null
      });
    }
    function preloadStylesheet(ownerDocument, key, preloadProps, state) {
      ownerDocument.querySelector(
        'link[rel="preload"][as="style"][' + key + "]"
      )
        ? (state.loading = Loaded)
        : ((key = ownerDocument.createElement("link")),
          (state.preload = key),
          key.addEventListener("load", function () {
            return (state.loading |= Loaded);
          }),
          key.addEventListener("error", function () {
            return (state.loading |= Errored);
          }),
          setInitialProperties(key, "link", preloadProps),
          markNodeAsHoistable(key),
          ownerDocument.head.appendChild(key));
    }
    function getScriptKey(src) {
      return (
        '[src="' + escapeSelectorAttributeValueInsideDoubleQuotes(src) + '"]'
      );
    }
    function getScriptSelectorFromKey(key) {
      return "script[async]" + key;
    }
    function acquireResource(hoistableRoot, resource, props) {
      resource.count++;
      if (null === resource.instance)
        switch (resource.type) {
          case "style":
            var instance = hoistableRoot.querySelector(
              'style[data-href~="' +
                escapeSelectorAttributeValueInsideDoubleQuotes(props.href) +
                '"]'
            );
            if (instance)
              return (
                (resource.instance = instance),
                markNodeAsHoistable(instance),
                instance
              );
            var styleProps = assign({}, props, {
              "data-href": props.href,
              "data-precedence": props.precedence,
              href: null,
              precedence: null
            });
            instance = (
              hoistableRoot.ownerDocument || hoistableRoot
            ).createElement("style");
            markNodeAsHoistable(instance);
            setInitialProperties(instance, "style", styleProps);
            insertStylesheet(instance, props.precedence, hoistableRoot);
            return (resource.instance = instance);
          case "stylesheet":
            styleProps = getStyleKey(props.href);
            var _instance = hoistableRoot.querySelector(
              getStylesheetSelectorFromKey(styleProps)
            );
            if (_instance)
              return (
                (resource.state.loading |= Inserted),
                (resource.instance = _instance),
                markNodeAsHoistable(_instance),
                _instance
              );
            instance = stylesheetPropsFromRawProps(props);
            (styleProps = preloadPropsMap.get(styleProps)) &&
              adoptPreloadPropsForStylesheet(instance, styleProps);
            _instance = (
              hoistableRoot.ownerDocument || hoistableRoot
            ).createElement("link");
            markNodeAsHoistable(_instance);
            var linkInstance = _instance;
            linkInstance._p = new Promise(function (resolve, reject) {
              linkInstance.onload = resolve;
              linkInstance.onerror = reject;
            });
            setInitialProperties(_instance, "link", instance);
            resource.state.loading |= Inserted;
            insertStylesheet(_instance, props.precedence, hoistableRoot);
            return (resource.instance = _instance);
          case "script":
            _instance = getScriptKey(props.src);
            if (
              (styleProps = hoistableRoot.querySelector(
                getScriptSelectorFromKey(_instance)
              ))
            )
              return (
                (resource.instance = styleProps),
                markNodeAsHoistable(styleProps),
                styleProps
              );
            instance = props;
            if ((styleProps = preloadPropsMap.get(_instance)))
              (instance = assign({}, props)),
                adoptPreloadPropsForScript(instance, styleProps);
            hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot;
            styleProps = hoistableRoot.createElement("script");
            markNodeAsHoistable(styleProps);
            setInitialProperties(styleProps, "link", instance);
            hoistableRoot.head.appendChild(styleProps);
            return (resource.instance = styleProps);
          case "void":
            return null;
          default:
            throw Error(
              'acquireResource encountered a resource type it did not expect: "' +
                resource.type +
                '". this is a bug in React.'
            );
        }
      else
        "stylesheet" === resource.type &&
          (resource.state.loading & Inserted) === NotLoaded &&
          ((instance = resource.instance),
          (resource.state.loading |= Inserted),
          insertStylesheet(instance, props.precedence, hoistableRoot));
      return resource.instance;
    }
    function insertStylesheet(instance, precedence, root) {
      for (
        var nodes = root.querySelectorAll(
            'link[rel="stylesheet"][data-precedence],style[data-precedence]'
          ),
          last = nodes.length ? nodes[nodes.length - 1] : null,
          prior = last,
          i = 0;
        i < nodes.length;
        i++
      ) {
        var node = nodes[i];
        if (node.dataset.precedence === precedence) prior = node;
        else if (prior !== last) break;
      }
      prior
        ? prior.parentNode.insertBefore(instance, prior.nextSibling)
        : ((precedence = 9 === root.nodeType ? root.head : root),
          precedence.insertBefore(instance, precedence.firstChild));
    }
    function adoptPreloadPropsForStylesheet(stylesheetProps, preloadProps) {
      null == stylesheetProps.crossOrigin &&
        (stylesheetProps.crossOrigin = preloadProps.crossOrigin);
      null == stylesheetProps.referrerPolicy &&
        (stylesheetProps.referrerPolicy = preloadProps.referrerPolicy);
      null == stylesheetProps.title &&
        (stylesheetProps.title = preloadProps.title);
    }
    function adoptPreloadPropsForScript(scriptProps, preloadProps) {
      null == scriptProps.crossOrigin &&
        (scriptProps.crossOrigin = preloadProps.crossOrigin);
      null == scriptProps.referrerPolicy &&
        (scriptProps.referrerPolicy = preloadProps.referrerPolicy);
      null == scriptProps.integrity &&
        (scriptProps.integrity = preloadProps.integrity);
    }
    function getHydratableHoistableCache(type, keyAttribute, ownerDocument) {
      if (null === tagCaches) {
        var cache = new Map();
        var caches = (tagCaches = new Map());
        caches.set(ownerDocument, cache);
      } else
        (caches = tagCaches),
          (cache = caches.get(ownerDocument)),
          cache || ((cache = new Map()), caches.set(ownerDocument, cache));
      if (cache.has(type)) return cache;
      cache.set(type, null);
      ownerDocument = ownerDocument.getElementsByTagName(type);
      for (caches = 0; caches < ownerDocument.length; caches++) {
        var node = ownerDocument[caches];
        if (
          !(
            node[internalHoistableMarker] ||
            node[internalInstanceKey] ||
            ("link" === type && "stylesheet" === node.getAttribute("rel"))
          ) &&
          node.namespaceURI !== SVG_NAMESPACE
        ) {
          var nodeKey = node.getAttribute(keyAttribute) || "";
          nodeKey = type + nodeKey;
          var existing = cache.get(nodeKey);
          existing ? existing.push(node) : cache.set(nodeKey, [node]);
        }
      }
      return cache;
    }
    function mountHoistable(hoistableRoot, type, instance) {
      hoistableRoot = hoistableRoot.ownerDocument || hoistableRoot;
      hoistableRoot.head.insertBefore(
        instance,
        "title" === type ? hoistableRoot.querySelector("head > title") : null
      );
    }
    function isHostHoistableType(type, props, hostContext) {
      var outsideHostContainerContext =
        !hostContext.ancestorInfo.containerTagInScope;
      if (
        hostContext.context === HostContextNamespaceSvg ||
        null != props.itemProp
      )
        return (
          !outsideHostContainerContext ||
            null == props.itemProp ||
            ("meta" !== type &&
              "title" !== type &&
              "style" !== type &&
              "link" !== type &&
              "script" !== type) ||
            console.error(
              "Cannot render a <%s> outside the main document if it has an `itemProp` prop. `itemProp` suggests the tag belongs to an `itemScope` which can appear anywhere in the DOM. If you were intending for React to hoist this <%s> remove the `itemProp` prop. Otherwise, try moving this tag into the <head> or <body> of the Document.",
              type,
              type
            ),
          !1
        );
      switch (type) {
        case "meta":
        case "title":
          return !0;
        case "style":
          if (
            "string" !== typeof props.precedence ||
            "string" !== typeof props.href ||
            "" === props.href
          ) {
            outsideHostContainerContext &&
              console.error(
                'Cannot render a <style> outside the main document without knowing its precedence and a unique href key. React can hoist and deduplicate <style> tags if you provide a `precedence` prop along with an `href` prop that does not conflict with the `href` values used in any other hoisted <style> or <link rel="stylesheet" ...> tags.  Note that hoisting <style> tags is considered an advanced feature that most will not use directly. Consider moving the <style> tag to the <head> or consider adding a `precedence="default"` and `href="some unique resource identifier"`.'
              );
            break;
          }
          return !0;
        case "link":
          if (
            "string" !== typeof props.rel ||
            "string" !== typeof props.href ||
            "" === props.href ||
            props.onLoad ||
            props.onError
          ) {
            if (
              "stylesheet" === props.rel &&
              "string" === typeof props.precedence
            ) {
              type = props.href;
              var onError = props.onError,
                disabled = props.disabled;
              hostContext = [];
              props.onLoad && hostContext.push("`onLoad`");
              onError && hostContext.push("`onError`");
              null != disabled && hostContext.push("`disabled`");
              onError = propNamesListJoin(hostContext, "and");
              onError += 1 === hostContext.length ? " prop" : " props";
              disabled =
                1 === hostContext.length ? "an " + onError : "the " + onError;
              hostContext.length &&
                console.error(
                  'React encountered a <link rel="stylesheet" href="%s" ... /> with a `precedence` prop that also included %s. The presence of loading and error handlers indicates an intent to manage the stylesheet loading state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the %s, otherwise remove the `precedence` prop.',
                  type,
                  disabled,
                  onError
                );
            }
            outsideHostContainerContext &&
              ("string" !== typeof props.rel ||
              "string" !== typeof props.href ||
              "" === props.href
                ? console.error(
                    "Cannot render a <link> outside the main document without a `rel` and `href` prop. Try adding a `rel` and/or `href` prop to this <link> or moving the link into the <head> tag"
                  )
                : (props.onError || props.onLoad) &&
                  console.error(
                    "Cannot render a <link> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>."
                  ));
            break;
          }
          switch (props.rel) {
            case "stylesheet":
              return (
                (type = props.precedence),
                (props = props.disabled),
                "string" !== typeof type &&
                  outsideHostContainerContext &&
                  console.error(
                    'Cannot render a <link rel="stylesheet" /> outside the main document without knowing its precedence. Consider adding precedence="default" or moving it into the root <head> tag.'
                  ),
                "string" === typeof type && null == props
              );
            default:
              return !0;
          }
        case "script":
          type =
            props.async &&
            "function" !== typeof props.async &&
            "symbol" !== typeof props.async;
          if (
            !type ||
            props.onLoad ||
            props.onError ||
            !props.src ||
            "string" !== typeof props.src
          ) {
            outsideHostContainerContext &&
              (type
                ? props.onLoad || props.onError
                  ? console.error(
                      "Cannot render a <script> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>."
                    )
                  : console.error(
                      "Cannot render a <script> outside the main document without `async={true}` and a non-empty `src` prop. Ensure there is a valid `src` and either make the script async or move it into the root <head> tag or somewhere in the <body>."
                    )
                : console.error(
                    'Cannot render a sync or defer <script> outside the main document without knowing its order. Try adding async="" or moving it into the root <head> tag.'
                  ));
            break;
          }
          return !0;
        case "noscript":
        case "template":
          outsideHostContainerContext &&
            console.error(
              "Cannot render <%s> outside the main document. Try moving it into the root <head> tag.",
              type
            );
      }
      return !1;
    }
    function preloadResource(resource) {
      return "stylesheet" === resource.type &&
        (resource.state.loading & Settled) === NotLoaded
        ? !1
        : !0;
    }
    function suspendResource(state, hoistableRoot, resource, props) {
      if (
        "stylesheet" === resource.type &&
        ("string" !== typeof props.media ||
          !1 !== matchMedia(props.media).matches) &&
        (resource.state.loading & Inserted) === NotLoaded
      ) {
        if (null === resource.instance) {
          var key = getStyleKey(props.href),
            instance = hoistableRoot.querySelector(
              getStylesheetSelectorFromKey(key)
            );
          if (instance) {
            hoistableRoot = instance._p;
            null !== hoistableRoot &&
              "object" === typeof hoistableRoot &&
              "function" === typeof hoistableRoot.then &&
              (state.count++,
              (state = onUnsuspend.bind(state)),
              hoistableRoot.then(state, state));
            resource.state.loading |= Inserted;
            resource.instance = instance;
            markNodeAsHoistable(instance);
            return;
          }
          instance = hoistableRoot.ownerDocument || hoistableRoot;
          props = stylesheetPropsFromRawProps(props);
          (key = preloadPropsMap.get(key)) &&
            adoptPreloadPropsForStylesheet(props, key);
          instance = instance.createElement("link");
          markNodeAsHoistable(instance);
          var linkInstance = instance;
          linkInstance._p = new Promise(function (resolve, reject) {
            linkInstance.onload = resolve;
            linkInstance.onerror = reject;
          });
          setInitialProperties(instance, "link", props);
          resource.instance = instance;
        }
        null === state.stylesheets && (state.stylesheets = new Map());
        state.stylesheets.set(resource, hoistableRoot);
        (hoistableRoot = resource.state.preload) &&
          (resource.state.loading & Settled) === NotLoaded &&
          (state.count++,
          (resource = onUnsuspend.bind(state)),
          hoistableRoot.addEventListener("load", resource),
          hoistableRoot.addEventListener("error", resource));
      }
    }
    function waitForCommitToBeReady(state, timeoutOffset) {
      state.stylesheets &&
        0 === state.count &&
        insertSuspendedStylesheets(state, state.stylesheets);
      return 0 < state.count || 0 < state.imgCount
        ? function (commit) {
            var stylesheetTimer = setTimeout(function () {
              state.stylesheets &&
                insertSuspendedStylesheets(state, state.stylesheets);
              if (state.unsuspend) {
                var unsuspend = state.unsuspend;
                state.unsuspend = null;
                unsuspend();
              }
            }, SUSPENSEY_STYLESHEET_TIMEOUT + timeoutOffset);
            0 < state.imgBytes &&
              0 === estimatedBytesWithinLimit &&
              (estimatedBytesWithinLimit =
                125 * estimateBandwidth() * SUSPENSEY_IMAGE_TIME_ESTIMATE);
            var imgTimer = setTimeout(
              function () {
                state.waitingForImages = !1;
                if (
                  0 === state.count &&
                  (state.stylesheets &&
                    insertSuspendedStylesheets(state, state.stylesheets),
                  state.unsuspend)
                ) {
                  var unsuspend = state.unsuspend;
                  state.unsuspend = null;
                  unsuspend();
                }
              },
              (state.imgBytes > estimatedBytesWithinLimit
                ? 50
                : SUSPENSEY_IMAGE_TIMEOUT) + timeoutOffset
            );
            state.unsuspend = commit;
            return function () {
              state.unsuspend = null;
              clearTimeout(stylesheetTimer);
              clearTimeout(imgTimer);
            };
          }
        : null;
    }
    function onUnsuspend() {
      this.count--;
      if (0 === this.count && (0 === this.imgCount || !this.waitingForImages))
        if (this.stylesheets)
          insertSuspendedStylesheets(this, this.stylesheets);
        else if (this.unsuspend) {
          var unsuspend = this.unsuspend;
          this.unsuspend = null;
          unsuspend();
        }
    }
    function insertSuspendedStylesheets(state, resources) {
      state.stylesheets = null;
      null !== state.unsuspend &&
        (state.count++,
        (precedencesByRoot = new Map()),
        resources.forEach(insertStylesheetIntoRoot, state),
        (precedencesByRoot = null),
        onUnsuspend.call(state));
    }
    function insertStylesheetIntoRoot(root, resource) {
      if (!(resource.state.loading & Inserted)) {
        var precedences = precedencesByRoot.get(root);
        if (precedences) var last = precedences.get(LAST_PRECEDENCE);
        else {
          precedences = new Map();
          precedencesByRoot.set(root, precedences);
          for (
            var nodes = root.querySelectorAll(
                "link[data-precedence],style[data-precedence]"
              ),
              i = 0;
            i < nodes.length;
            i++
          ) {
            var node = nodes[i];
            if (
              "LINK" === node.nodeName ||
              "not all" !== node.getAttribute("media")
            )
              precedences.set(node.dataset.precedence, node), (last = node);
          }
          last && precedences.set(LAST_PRECEDENCE, last);
        }
        nodes = resource.instance;
        node = nodes.getAttribute("data-precedence");
        i = precedences.get(node) || last;
        i === last && precedences.set(LAST_PRECEDENCE, nodes);
        precedences.set(node, nodes);
        this.count++;
        last = onUnsuspend.bind(this);
        nodes.addEventListener("load", last);
        nodes.addEventListener("error", last);
        i
          ? i.parentNode.insertBefore(nodes, i.nextSibling)
          : ((root = 9 === root.nodeType ? root.head : root),
            root.insertBefore(nodes, root.firstChild));
        resource.state.loading |= Inserted;
      }
    }
    function FiberRootNode(
      containerInfo,
      tag,
      hydrate,
      identifierPrefix,
      onUncaughtError,
      onCaughtError,
      onRecoverableError,
      onDefaultTransitionIndicator,
      formState
    ) {
      this.tag = 1;
      this.containerInfo = containerInfo;
      this.pingCache = this.current = this.pendingChildren = null;
      this.timeoutHandle = noTimeout;
      this.callbackNode =
        this.next =
        this.pendingContext =
        this.context =
        this.cancelPendingCommit =
          null;
      this.callbackPriority = 0;
      this.expirationTimes = createLaneMap(-1);
      this.entangledLanes =
        this.shellSuspendCounter =
        this.errorRecoveryDisabledLanes =
        this.expiredLanes =
        this.warmLanes =
        this.pingedLanes =
        this.suspendedLanes =
        this.pendingLanes =
          0;
      this.entanglements = createLaneMap(0);
      this.hiddenUpdates = createLaneMap(null);
      this.identifierPrefix = identifierPrefix;
      this.onUncaughtError = onUncaughtError;
      this.onCaughtError = onCaughtError;
      this.onRecoverableError = onRecoverableError;
      this.pooledCache = null;
      this.pooledCacheLanes = 0;
      this.formState = formState;
      this.incompleteTransitions = new Map();
      this.passiveEffectDuration = this.effectDuration = -0;
      this.memoizedUpdaters = new Set();
      containerInfo = this.pendingUpdatersLaneMap = [];
      for (tag = 0; 31 > tag; tag++) containerInfo.push(new Set());
      this._debugRootType = hydrate ? "hydrateRoot()" : "createRoot()";
    }
    function createFiberRoot(
      containerInfo,
      tag,
      hydrate,
      initialChildren,
      hydrationCallbacks,
      isStrictMode,
      identifierPrefix,
      formState,
      onUncaughtError,
      onCaughtError,
      onRecoverableError,
      onDefaultTransitionIndicator
    ) {
      containerInfo = new FiberRootNode(
        containerInfo,
        tag,
        hydrate,
        identifierPrefix,
        onUncaughtError,
        onCaughtError,
        onRecoverableError,
        onDefaultTransitionIndicator,
        formState
      );
      tag = ConcurrentMode;
      !0 === isStrictMode && (tag |= StrictLegacyMode | StrictEffectsMode);
      tag |= ProfileMode;
      isStrictMode = createFiber(3, null, null, tag);
      containerInfo.current = isStrictMode;
      isStrictMode.stateNode = containerInfo;
      tag = createCache();
      retainCache(tag);
      containerInfo.pooledCache = tag;
      retainCache(tag);
      isStrictMode.memoizedState = {
        element: initialChildren,
        isDehydrated: hydrate,
        cache: tag
      };
      initializeUpdateQueue(isStrictMode);
      return containerInfo;
    }
    function getContextForSubtree(parentComponent) {
      if (!parentComponent) return emptyContextObject;
      parentComponent = emptyContextObject;
      return parentComponent;
    }
    function updateContainerImpl(
      rootFiber,
      lane,
      element,
      container,
      parentComponent,
      callback
    ) {
      if (
        injectedHook &&
        "function" === typeof injectedHook.onScheduleFiberRoot
      )
        try {
          injectedHook.onScheduleFiberRoot(rendererID, container, element);
        } catch (err) {
          hasLoggedError ||
            ((hasLoggedError = !0),
            console.error(
              "React instrumentation encountered an error: %o",
              err
            ));
        }
      parentComponent = getContextForSubtree(parentComponent);
      null === container.context
        ? (container.context = parentComponent)
        : (container.pendingContext = parentComponent);
      isRendering &&
        null !== current &&
        !didWarnAboutNestedUpdates &&
        ((didWarnAboutNestedUpdates = !0),
        console.error(
          "Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.\n\nCheck the render method of %s.",
          getComponentNameFromFiber(current) || "Unknown"
        ));
      container = createUpdate(lane);
      container.payload = { element: element };
      callback = void 0 === callback ? null : callback;
      null !== callback &&
        ("function" !== typeof callback &&
          console.error(
            "Expected the last optional `callback` argument to be a function. Instead received: %s.",
            callback
          ),
        (container.callback = callback));
      element = enqueueUpdate(rootFiber, container, lane);
      null !== element &&
        (startUpdateTimerByLane(lane, "root.render()", null),
        scheduleUpdateOnFiber(element, rootFiber, lane),
        entangleTransitions(element, rootFiber, lane));
    }
    function markRetryLaneImpl(fiber, retryLane) {
      fiber = fiber.memoizedState;
      if (null !== fiber && null !== fiber.dehydrated) {
        var a = fiber.retryLane;
        fiber.retryLane = 0 !== a && a < retryLane ? a : retryLane;
      }
    }
    function markRetryLaneIfNotHydrated(fiber, retryLane) {
      markRetryLaneImpl(fiber, retryLane);
      (fiber = fiber.alternate) && markRetryLaneImpl(fiber, retryLane);
    }
    function attemptContinuousHydration(fiber) {
      if (13 === fiber.tag || 31 === fiber.tag) {
        var root = enqueueConcurrentRenderForLane(fiber, 67108864);
        null !== root && scheduleUpdateOnFiber(root, fiber, 67108864);
        markRetryLaneIfNotHydrated(fiber, 67108864);
      }
    }
    function attemptHydrationAtCurrentPriority(fiber) {
      if (13 === fiber.tag || 31 === fiber.tag) {
        var lane = requestUpdateLane(fiber);
        lane = getBumpedLaneForHydrationByLane(lane);
        var root = enqueueConcurrentRenderForLane(fiber, lane);
        null !== root && scheduleUpdateOnFiber(root, fiber, lane);
        markRetryLaneIfNotHydrated(fiber, lane);
      }
    }
    function getCurrentFiberForDevTools() {
      return current;
    }
    function dispatchDiscreteEvent(
      domEventName,
      eventSystemFlags,
      container,
      nativeEvent
    ) {
      var prevTransition = ReactSharedInternals.T;
      ReactSharedInternals.T = null;
      var previousPriority = ReactDOMSharedInternals.p;
      try {
        (ReactDOMSharedInternals.p = DiscreteEventPriority),
          dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);
      } finally {
        (ReactDOMSharedInternals.p = previousPriority),
          (ReactSharedInternals.T = prevTransition);
      }
    }
    function dispatchContinuousEvent(
      domEventName,
      eventSystemFlags,
      container,
      nativeEvent
    ) {
      var prevTransition = ReactSharedInternals.T;
      ReactSharedInternals.T = null;
      var previousPriority = ReactDOMSharedInternals.p;
      try {
        (ReactDOMSharedInternals.p = ContinuousEventPriority),
          dispatchEvent(domEventName, eventSystemFlags, container, nativeEvent);
      } finally {
        (ReactDOMSharedInternals.p = previousPriority),
          (ReactSharedInternals.T = prevTransition);
      }
    }
    function dispatchEvent(
      domEventName,
      eventSystemFlags,
      targetContainer,
      nativeEvent
    ) {
      if (_enabled) {
        var blockedOn = findInstanceBlockingEvent(nativeEvent);
        if (null === blockedOn)
          dispatchEventForPluginEventSystem(
            domEventName,
            eventSystemFlags,
            nativeEvent,
            return_targetInst,
            targetContainer
          ),
            clearIfContinuousEvent(domEventName, nativeEvent);
        else if (
          queueIfContinuousEvent(
            blockedOn,
            domEventName,
            eventSystemFlags,
            targetContainer,
            nativeEvent
          )
        )
          nativeEvent.stopPropagation();
        else if (
          (clearIfContinuousEvent(domEventName, nativeEvent),
          eventSystemFlags & 4 &&
            -1 < discreteReplayableEvents.indexOf(domEventName))
        ) {
          for (; null !== blockedOn; ) {
            var fiber = getInstanceFromNode(blockedOn);
            if (null !== fiber)
              switch (fiber.tag) {
                case 3:
                  fiber = fiber.stateNode;
                  if (fiber.current.memoizedState.isDehydrated) {
                    var lanes = getHighestPriorityLanes(fiber.pendingLanes);
                    if (0 !== lanes) {
                      var root = fiber;
                      root.pendingLanes |= 2;
                      for (root.entangledLanes |= 2; lanes; ) {
                        var lane = 1 << (31 - clz32(lanes));
                        root.entanglements[1] |= lane;
                        lanes &= ~lane;
                      }
                      ensureRootIsScheduled(fiber);
                      (executionContext & (RenderContext | CommitContext)) ===
                        NoContext &&
                        ((workInProgressRootRenderTargetTime =
                          now$1() + RENDER_TIMEOUT_MS),
                        flushSyncWorkAcrossRoots_impl(0, !1));
                    }
                  }
                  break;
                case 31:
                case 13:
                  (root = enqueueConcurrentRenderForLane(fiber, 2)),
                    null !== root && scheduleUpdateOnFiber(root, fiber, 2),
                    flushSyncWork$1(),
                    markRetryLaneIfNotHydrated(fiber, 2);
              }
            fiber = findInstanceBlockingEvent(nativeEvent);
            null === fiber &&
              dispatchEventForPluginEventSystem(
                domEventName,
                eventSystemFlags,
                nativeEvent,
                return_targetInst,
                targetContainer
              );
            if (fiber === blockedOn) break;
            blockedOn = fiber;
          }
          null !== blockedOn && nativeEvent.stopPropagation();
        } else
          dispatchEventForPluginEventSystem(
            domEventName,
            eventSystemFlags,
            nativeEvent,
            null,
            targetContainer
          );
      }
    }
    function findInstanceBlockingEvent(nativeEvent) {
      nativeEvent = getEventTarget(nativeEvent);
      return findInstanceBlockingTarget(nativeEvent);
    }
    function findInstanceBlockingTarget(targetNode) {
      return_targetInst = null;
      targetNode = getClosestInstanceFromNode(targetNode);
      if (null !== targetNode) {
        var nearestMounted = getNearestMountedFiber(targetNode);
        if (null === nearestMounted) targetNode = null;
        else {
          var tag = nearestMounted.tag;
          if (13 === tag) {
            targetNode = getSuspenseInstanceFromFiber(nearestMounted);
            if (null !== targetNode) return targetNode;
            targetNode = null;
          } else if (31 === tag) {
            targetNode = getActivityInstanceFromFiber(nearestMounted);
            if (null !== targetNode) return targetNode;
            targetNode = null;
          } else if (3 === tag) {
            if (nearestMounted.stateNode.current.memoizedState.isDehydrated)
              return 3 === nearestMounted.tag
                ? nearestMounted.stateNode.containerInfo
                : null;
            targetNode = null;
          } else nearestMounted !== targetNode && (targetNode = null);
        }
      }
      return_targetInst = targetNode;
      return null;
    }
    function getEventPriority(domEventName) {
      switch (domEventName) {
        case "beforetoggle":
        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 "toggle":
        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 DiscreteEventPriority;
        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 "touchmove":
        case "wheel":
        case "mouseenter":
        case "mouseleave":
        case "pointerenter":
        case "pointerleave":
          return ContinuousEventPriority;
        case "message":
          switch (getCurrentPriorityLevel()) {
            case ImmediatePriority:
              return DiscreteEventPriority;
            case UserBlockingPriority:
              return ContinuousEventPriority;
            case NormalPriority$1:
            case LowPriority:
              return DefaultEventPriority;
            case IdlePriority:
              return IdleEventPriority;
            default:
              return DefaultEventPriority;
          }
        default:
          return DefaultEventPriority;
      }
    }
    function clearIfContinuousEvent(domEventName, nativeEvent) {
      switch (domEventName) {
        case "focusin":
        case "focusout":
          queuedFocus = null;
          break;
        case "dragenter":
        case "dragleave":
          queuedDrag = null;
          break;
        case "mouseover":
        case "mouseout":
          queuedMouse = null;
          break;
        case "pointerover":
        case "pointerout":
          queuedPointers.delete(nativeEvent.pointerId);
          break;
        case "gotpointercapture":
        case "lostpointercapture":
          queuedPointerCaptures.delete(nativeEvent.pointerId);
      }
    }
    function accumulateOrCreateContinuousQueuedReplayableEvent(
      existingQueuedEvent,
      blockedOn,
      domEventName,
      eventSystemFlags,
      targetContainer,
      nativeEvent
    ) {
      if (
        null === existingQueuedEvent ||
        existingQueuedEvent.nativeEvent !== nativeEvent
      )
        return (
          (existingQueuedEvent = {
            blockedOn: blockedOn,
            domEventName: domEventName,
            eventSystemFlags: eventSystemFlags,
            nativeEvent: nativeEvent,
            targetContainers: [targetContainer]
          }),
          null !== blockedOn &&
            ((blockedOn = getInstanceFromNode(blockedOn)),
            null !== blockedOn && attemptContinuousHydration(blockedOn)),
          existingQueuedEvent
        );
      existingQueuedEvent.eventSystemFlags |= eventSystemFlags;
      blockedOn = existingQueuedEvent.targetContainers;
      null !== targetContainer &&
        -1 === blockedOn.indexOf(targetContainer) &&
        blockedOn.push(targetContainer);
      return existingQueuedEvent;
    }
    function queueIfContinuousEvent(
      blockedOn,
      domEventName,
      eventSystemFlags,
      targetContainer,
      nativeEvent
    ) {
      switch (domEventName) {
        case "focusin":
          return (
            (queuedFocus = accumulateOrCreateContinuousQueuedReplayableEvent(
              queuedFocus,
              blockedOn,
              domEventName,
              eventSystemFlags,
              targetContainer,
              nativeEvent
            )),
            !0
          );
        case "dragenter":
          return (
            (queuedDrag = accumulateOrCreateContinuousQueuedReplayableEvent(
              queuedDrag,
              blockedOn,
              domEventName,
              eventSystemFlags,
              targetContainer,
              nativeEvent
            )),
            !0
          );
        case "mouseover":
          return (
            (queuedMouse = accumulateOrCreateContinuousQueuedReplayableEvent(
              queuedMouse,
              blockedOn,
              domEventName,
              eventSystemFlags,
              targetContainer,
              nativeEvent
            )),
            !0
          );
        case "pointerover":
          var pointerId = nativeEvent.pointerId;
          queuedPointers.set(
            pointerId,
            accumulateOrCreateContinuousQueuedReplayableEvent(
              queuedPointers.get(pointerId) || null,
              blockedOn,
              domEventName,
              eventSystemFlags,
              targetContainer,
              nativeEvent
            )
          );
          return !0;
        case "gotpointercapture":
          return (
            (pointerId = nativeEvent.pointerId),
            queuedPointerCaptures.set(
              pointerId,
              accumulateOrCreateContinuousQueuedReplayableEvent(
                queuedPointerCaptures.get(pointerId) || null,
                blockedOn,
                domEventName,
                eventSystemFlags,
                targetContainer,
                nativeEvent
              )
            ),
            !0
          );
      }
      return !1;
    }
    function attemptExplicitHydrationTarget(queuedTarget) {
      var targetInst = getClosestInstanceFromNode(queuedTarget.target);
      if (null !== targetInst) {
        var nearestMounted = getNearestMountedFiber(targetInst);
        if (null !== nearestMounted)
          if (((targetInst = nearestMounted.tag), 13 === targetInst)) {
            if (
              ((targetInst = getSuspenseInstanceFromFiber(nearestMounted)),
              null !== targetInst)
            ) {
              queuedTarget.blockedOn = targetInst;
              runWithPriority(queuedTarget.priority, function () {
                attemptHydrationAtCurrentPriority(nearestMounted);
              });
              return;
            }
          } else if (31 === targetInst) {
            if (
              ((targetInst = getActivityInstanceFromFiber(nearestMounted)),
              null !== targetInst)
            ) {
              queuedTarget.blockedOn = targetInst;
              runWithPriority(queuedTarget.priority, function () {
                attemptHydrationAtCurrentPriority(nearestMounted);
              });
              return;
            }
          } else if (
            3 === targetInst &&
            nearestMounted.stateNode.current.memoizedState.isDehydrated
          ) {
            queuedTarget.blockedOn =
              3 === nearestMounted.tag
                ? nearestMounted.stateNode.containerInfo
                : null;
            return;
          }
      }
      queuedTarget.blockedOn = null;
    }
    function attemptReplayContinuousQueuedEvent(queuedEvent) {
      if (null !== queuedEvent.blockedOn) return !1;
      for (
        var targetContainers = queuedEvent.targetContainers;
        0 < targetContainers.length;

      ) {
        var nextBlockedOn = findInstanceBlockingEvent(queuedEvent.nativeEvent);
        if (null === nextBlockedOn) {
          nextBlockedOn = queuedEvent.nativeEvent;
          var nativeEventClone = new nextBlockedOn.constructor(
              nextBlockedOn.type,
              nextBlockedOn
            ),
            event = nativeEventClone;
          null !== currentReplayingEvent &&
            console.error(
              "Expected currently replaying event to be null. This error is likely caused by a bug in React. Please file an issue."
            );
          currentReplayingEvent = event;
          nextBlockedOn.target.dispatchEvent(nativeEventClone);
          null === currentReplayingEvent &&
            console.error(
              "Expected currently replaying event to not be null. This error is likely caused by a bug in React. Please file an issue."
            );
          currentReplayingEvent = null;
        } else
          return (
            (targetContainers = getInstanceFromNode(nextBlockedOn)),
            null !== targetContainers &&
              attemptContinuousHydration(targetContainers),
            (queuedEvent.blockedOn = nextBlockedOn),
            !1
          );
        targetContainers.shift();
      }
      return !0;
    }
    function attemptReplayContinuousQueuedEventInMap(queuedEvent, key, map) {
      attemptReplayContinuousQueuedEvent(queuedEvent) && map.delete(key);
    }
    function replayUnblockedEvents() {
      hasScheduledReplayAttempt = !1;
      null !== queuedFocus &&
        attemptReplayContinuousQueuedEvent(queuedFocus) &&
        (queuedFocus = null);
      null !== queuedDrag &&
        attemptReplayContinuousQueuedEvent(queuedDrag) &&
        (queuedDrag = null);
      null !== queuedMouse &&
        attemptReplayContinuousQueuedEvent(queuedMouse) &&
        (queuedMouse = null);
      queuedPointers.forEach(attemptReplayContinuousQueuedEventInMap);
      queuedPointerCaptures.forEach(attemptReplayContinuousQueuedEventInMap);
    }
    function scheduleCallbackIfUnblocked(queuedEvent, unblocked) {
      queuedEvent.blockedOn === unblocked &&
        ((queuedEvent.blockedOn = null),
        hasScheduledReplayAttempt ||
          ((hasScheduledReplayAttempt = !0),
          Scheduler.unstable_scheduleCallback(
            Scheduler.unstable_NormalPriority,
            replayUnblockedEvents
          )));
    }
    function scheduleReplayQueueIfNeeded(formReplayingQueue) {
      lastScheduledReplayQueue !== formReplayingQueue &&
        ((lastScheduledReplayQueue = formReplayingQueue),
        Scheduler.unstable_scheduleCallback(
          Scheduler.unstable_NormalPriority,
          function () {
            lastScheduledReplayQueue === formReplayingQueue &&
              (lastScheduledReplayQueue = null);
            for (var i = 0; i < formReplayingQueue.length; i += 3) {
              var form = formReplayingQueue[i],
                submitterOrAction = formReplayingQueue[i + 1],
                formData = formReplayingQueue[i + 2];
              if ("function" !== typeof submitterOrAction)
                if (
                  null === findInstanceBlockingTarget(submitterOrAction || form)
                )
                  continue;
                else break;
              var formInst = getInstanceFromNode(form);
              null !== formInst &&
                (formReplayingQueue.splice(i, 3),
                (i -= 3),
                (form = {
                  pending: !0,
                  data: formData,
                  method: form.method,
                  action: submitterOrAction
                }),
                Object.freeze(form),
                startHostTransition(
                  formInst,
                  form,
                  submitterOrAction,
                  formData
                ));
            }
          }
        ));
    }
    function retryIfBlockedOn(unblocked) {
      function unblock(queuedEvent) {
        return scheduleCallbackIfUnblocked(queuedEvent, unblocked);
      }
      null !== queuedFocus &&
        scheduleCallbackIfUnblocked(queuedFocus, unblocked);
      null !== queuedDrag && scheduleCallbackIfUnblocked(queuedDrag, unblocked);
      null !== queuedMouse &&
        scheduleCallbackIfUnblocked(queuedMouse, unblocked);
      queuedPointers.forEach(unblock);
      queuedPointerCaptures.forEach(unblock);
      for (var i = 0; i < queuedExplicitHydrationTargets.length; i++) {
        var queuedTarget = queuedExplicitHydrationTargets[i];
        queuedTarget.blockedOn === unblocked && (queuedTarget.blockedOn = null);
      }
      for (
        ;
        0 < queuedExplicitHydrationTargets.length &&
        ((i = queuedExplicitHydrationTargets[0]), null === i.blockedOn);

      )
        attemptExplicitHydrationTarget(i),
          null === i.blockedOn && queuedExplicitHydrationTargets.shift();
      i = (unblocked.ownerDocument || unblocked).$$reactFormReplay;
      if (null != i)
        for (queuedTarget = 0; queuedTarget < i.length; queuedTarget += 3) {
          var form = i[queuedTarget],
            submitterOrAction = i[queuedTarget + 1],
            formProps = form[internalPropsKey] || null;
          if ("function" === typeof submitterOrAction)
            formProps || scheduleReplayQueueIfNeeded(i);
          else if (formProps) {
            var action = null;
            if (
              submitterOrAction &&
              submitterOrAction.hasAttribute("formAction")
            )
              if (
                ((form = submitterOrAction),
                (formProps = submitterOrAction[internalPropsKey] || null))
              )
                action = formProps.formAction;
              else {
                if (null !== findInstanceBlockingTarget(form)) continue;
              }
            else action = formProps.action;
            "function" === typeof action
              ? (i[queuedTarget + 1] = action)
              : (i.splice(queuedTarget, 3), (queuedTarget -= 3));
            scheduleReplayQueueIfNeeded(i);
          }
        }
    }
    function defaultOnDefaultTransitionIndicator() {
      function handleNavigate(event) {
        event.canIntercept &&
          "react-transition" === event.info &&
          event.intercept({
            handler: function () {
              return new Promise(function (resolve) {
                return (pendingResolve = resolve);
              });
            },
            focusReset: "manual",
            scroll: "manual"
          });
      }
      function handleNavigateComplete() {
        null !== pendingResolve && (pendingResolve(), (pendingResolve = null));
        isCancelled || setTimeout(startFakeNavigation, 20);
      }
      function startFakeNavigation() {
        if (!isCancelled && !navigation.transition) {
          var currentEntry = navigation.currentEntry;
          currentEntry &&
            null != currentEntry.url &&
            navigation.navigate(currentEntry.url, {
              state: currentEntry.getState(),
              info: "react-transition",
              history: "replace"
            });
        }
      }
      if ("object" === typeof navigation) {
        var isCancelled = !1,
          pendingResolve = null;
        navigation.addEventListener("navigate", handleNavigate);
        navigation.addEventListener("navigatesuccess", handleNavigateComplete);
        navigation.addEventListener("navigateerror", handleNavigateComplete);
        setTimeout(startFakeNavigation, 100);
        return function () {
          isCancelled = !0;
          navigation.removeEventListener("navigate", handleNavigate);
          navigation.removeEventListener(
            "navigatesuccess",
            handleNavigateComplete
          );
          navigation.removeEventListener(
            "navigateerror",
            handleNavigateComplete
          );
          null !== pendingResolve &&
            (pendingResolve(), (pendingResolve = null));
        };
      }
    }
    function ReactDOMRoot(internalRoot) {
      this._internalRoot = internalRoot;
    }
    function ReactDOMHydrationRoot(internalRoot) {
      this._internalRoot = internalRoot;
    }
    function warnIfReactDOMContainerInDEV(container) {
      container[internalContainerInstanceKey] &&
        (container._reactRootContainer
          ? console.error(
              "You are calling ReactDOMClient.createRoot() on a container that was previously passed to ReactDOM.render(). This is not supported."
            )
          : console.error(
              "You are calling ReactDOMClient.createRoot() on a container that has already been passed to createRoot() before. Instead, call root.render() on the existing root instead if you want to update it."
            ));
    }
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
    var Scheduler = __webpack_require__(/*! scheduler */ "./node_modules/scheduler/index.js"),
      React = __webpack_require__(/*! react */ "./node_modules/react/index.js"),
      ReactDOM = __webpack_require__(/*! react-dom */ "./node_modules/react-dom/index.js"),
      assign = Object.assign,
      REACT_LEGACY_ELEMENT_TYPE = Symbol.for("react.element"),
      REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"),
      REACT_PORTAL_TYPE = Symbol.for("react.portal"),
      REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"),
      REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"),
      REACT_PROFILER_TYPE = Symbol.for("react.profiler"),
      REACT_CONSUMER_TYPE = Symbol.for("react.consumer"),
      REACT_CONTEXT_TYPE = Symbol.for("react.context"),
      REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"),
      REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"),
      REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"),
      REACT_MEMO_TYPE = Symbol.for("react.memo"),
      REACT_LAZY_TYPE = Symbol.for("react.lazy");
    Symbol.for("react.scope");
    var REACT_ACTIVITY_TYPE = Symbol.for("react.activity");
    Symbol.for("react.legacy_hidden");
    Symbol.for("react.tracing_marker");
    var REACT_MEMO_CACHE_SENTINEL = Symbol.for("react.memo_cache_sentinel");
    Symbol.for("react.view_transition");
    var MAYBE_ITERATOR_SYMBOL = Symbol.iterator,
      REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"),
      isArrayImpl = Array.isArray,
      ReactSharedInternals =
        React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,
      ReactDOMSharedInternals =
        ReactDOM.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,
      NotPending = Object.freeze({
        pending: !1,
        data: null,
        method: null,
        action: null
      }),
      valueStack = [];
    var fiberStack = [];
    var index$jscomp$0 = -1,
      contextStackCursor = createCursor(null),
      contextFiberStackCursor = createCursor(null),
      rootInstanceStackCursor = createCursor(null),
      hostTransitionProviderCursor = createCursor(null),
      disabledDepth = 0,
      prevLog,
      prevInfo,
      prevWarn,
      prevError,
      prevGroup,
      prevGroupCollapsed,
      prevGroupEnd;
    disabledLog.__reactDisabledLog = !0;
    var prefix,
      suffix,
      reentry = !1;
    var componentFrameCache = new (
      "function" === typeof WeakMap ? WeakMap : Map
    )();
    var current = null,
      isRendering = !1,
      hasOwnProperty = Object.prototype.hasOwnProperty,
      scheduleCallback$3 = Scheduler.unstable_scheduleCallback,
      cancelCallback$1 = Scheduler.unstable_cancelCallback,
      shouldYield = Scheduler.unstable_shouldYield,
      requestPaint = Scheduler.unstable_requestPaint,
      now$1 = Scheduler.unstable_now,
      getCurrentPriorityLevel = Scheduler.unstable_getCurrentPriorityLevel,
      ImmediatePriority = Scheduler.unstable_ImmediatePriority,
      UserBlockingPriority = Scheduler.unstable_UserBlockingPriority,
      NormalPriority$1 = Scheduler.unstable_NormalPriority,
      LowPriority = Scheduler.unstable_LowPriority,
      IdlePriority = Scheduler.unstable_IdlePriority,
      log$1 = Scheduler.log,
      unstable_setDisableYieldValue = Scheduler.unstable_setDisableYieldValue,
      rendererID = null,
      injectedHook = null,
      hasLoggedError = !1,
      isDevToolsPresent = "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__,
      clz32 = Math.clz32 ? Math.clz32 : clz32Fallback,
      log = Math.log,
      LN2 = Math.LN2,
      nextTransitionUpdateLane = 256,
      nextTransitionDeferredLane = 262144,
      nextRetryLane = 4194304,
      DiscreteEventPriority = 2,
      ContinuousEventPriority = 8,
      DefaultEventPriority = 32,
      IdleEventPriority = 268435456,
      randomKey = Math.random().toString(36).slice(2),
      internalInstanceKey = "__reactFiber$" + randomKey,
      internalPropsKey = "__reactProps$" + randomKey,
      internalContainerInstanceKey = "__reactContainer$" + randomKey,
      internalEventHandlersKey = "__reactEvents$" + randomKey,
      internalEventHandlerListenersKey = "__reactListeners$" + randomKey,
      internalEventHandlesSetKey = "__reactHandles$" + randomKey,
      internalRootNodeResourcesKey = "__reactResources$" + randomKey,
      internalHoistableMarker = "__reactMarker$" + randomKey,
      allNativeEvents = new Set(),
      registrationNameDependencies = {},
      possibleRegistrationNames = {},
      hasReadOnlyValue = {
        button: !0,
        checkbox: !0,
        image: !0,
        hidden: !0,
        radio: !0,
        reset: !0,
        submit: !0
      },
      VALID_ATTRIBUTE_NAME_REGEX = RegExp(
        "^[: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]*$"
      ),
      illegalAttributeNameCache = {},
      validatedAttributeNameCache = {},
      escapeSelectorAttributeValueInsideDoubleQuotesRegex = /[\n"\\]/g,
      didWarnValueDefaultValue$1 = !1,
      didWarnCheckedDefaultChecked = !1,
      didWarnSelectedSetOnOption = !1,
      didWarnInvalidChild = !1,
      didWarnInvalidInnerHTML = !1;
    var didWarnValueDefaultValue = !1;
    var valuePropNames = ["value", "defaultValue"],
      didWarnValDefaultVal = !1,
      needsEscaping = /["'&<>\n\t]|^\s|\s$/,
      specialTags =
        "address applet area article aside base basefont bgsound blockquote body br button caption center col colgroup dd details dir div dl dt embed fieldset figcaption figure footer form frame frameset h1 h2 h3 h4 h5 h6 head header hgroup hr html iframe img input isindex li link listing main marquee menu menuitem meta nav noembed noframes noscript object ol p param plaintext pre script section select source style summary table tbody td template textarea tfoot th thead title tr track ul wbr xmp".split(
          " "
        ),
      inScopeTags =
        "applet caption html table td th marquee object template foreignObject desc title".split(
          " "
        ),
      buttonScopeTags = inScopeTags.concat(["button"]),
      impliedEndTags = "dd dt li option optgroup p rp rt".split(" "),
      emptyAncestorInfoDev = {
        current: null,
        formTag: null,
        aTagInScope: null,
        buttonTagInScope: null,
        nobrTagInScope: null,
        pTagInButtonScope: null,
        listItemTagAutoclosing: null,
        dlItemTagAutoclosing: null,
        containerTagInScope: null,
        implicitRootScope: !1
      },
      didWarn = {},
      shorthandToLonghand = {
        animation:
          "animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationPlayState animationTimingFunction".split(
            " "
          ),
        background:
          "backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPositionX backgroundPositionY backgroundRepeat backgroundSize".split(
            " "
          ),
        backgroundPosition: ["backgroundPositionX", "backgroundPositionY"],
        border:
          "borderBottomColor borderBottomStyle borderBottomWidth borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeftColor borderLeftStyle borderLeftWidth borderRightColor borderRightStyle borderRightWidth borderTopColor borderTopStyle borderTopWidth".split(
            " "
          ),
        borderBlockEnd: [
          "borderBlockEndColor",
          "borderBlockEndStyle",
          "borderBlockEndWidth"
        ],
        borderBlockStart: [
          "borderBlockStartColor",
          "borderBlockStartStyle",
          "borderBlockStartWidth"
        ],
        borderBottom: [
          "borderBottomColor",
          "borderBottomStyle",
          "borderBottomWidth"
        ],
        borderColor: [
          "borderBottomColor",
          "borderLeftColor",
          "borderRightColor",
          "borderTopColor"
        ],
        borderImage: [
          "borderImageOutset",
          "borderImageRepeat",
          "borderImageSlice",
          "borderImageSource",
          "borderImageWidth"
        ],
        borderInlineEnd: [
          "borderInlineEndColor",
          "borderInlineEndStyle",
          "borderInlineEndWidth"
        ],
        borderInlineStart: [
          "borderInlineStartColor",
          "borderInlineStartStyle",
          "borderInlineStartWidth"
        ],
        borderLeft: ["borderLeftColor", "borderLeftStyle", "borderLeftWidth"],
        borderRadius: [
          "borderBottomLeftRadius",
          "borderBottomRightRadius",
          "borderTopLeftRadius",
          "borderTopRightRadius"
        ],
        borderRight: [
          "borderRightColor",
          "borderRightStyle",
          "borderRightWidth"
        ],
        borderStyle: [
          "borderBottomStyle",
          "borderLeftStyle",
          "borderRightStyle",
          "borderTopStyle"
        ],
        borderTop: ["borderTopColor", "borderTopStyle", "borderTopWidth"],
        borderWidth: [
          "borderBottomWidth",
          "borderLeftWidth",
          "borderRightWidth",
          "borderTopWidth"
        ],
        columnRule: ["columnRuleColor", "columnRuleStyle", "columnRuleWidth"],
        columns: ["columnCount", "columnWidth"],
        flex: ["flexBasis", "flexGrow", "flexShrink"],
        flexFlow: ["flexDirection", "flexWrap"],
        font: "fontFamily fontFeatureSettings fontKerning fontLanguageOverride fontSize fontSizeAdjust fontStretch fontStyle fontVariant fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition fontWeight lineHeight".split(
          " "
        ),
        fontVariant:
          "fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition".split(
            " "
          ),
        gap: ["columnGap", "rowGap"],
        grid: "gridAutoColumns gridAutoFlow gridAutoRows gridTemplateAreas gridTemplateColumns gridTemplateRows".split(
          " "
        ),
        gridArea: [
          "gridColumnEnd",
          "gridColumnStart",
          "gridRowEnd",
          "gridRowStart"
        ],
        gridColumn: ["gridColumnEnd", "gridColumnStart"],
        gridColumnGap: ["columnGap"],
        gridGap: ["columnGap", "rowGap"],
        gridRow: ["gridRowEnd", "gridRowStart"],
        gridRowGap: ["rowGap"],
        gridTemplate: [
          "gridTemplateAreas",
          "gridTemplateColumns",
          "gridTemplateRows"
        ],
        listStyle: ["listStyleImage", "listStylePosition", "listStyleType"],
        margin: ["marginBottom", "marginLeft", "marginRight", "marginTop"],
        marker: ["markerEnd", "markerMid", "markerStart"],
        mask: "maskClip maskComposite maskImage maskMode maskOrigin maskPositionX maskPositionY maskRepeat maskSize".split(
          " "
        ),
        maskPosition: ["maskPositionX", "maskPositionY"],
        outline: ["outlineColor", "outlineStyle", "outlineWidth"],
        overflow: ["overflowX", "overflowY"],
        padding: ["paddingBottom", "paddingLeft", "paddingRight", "paddingTop"],
        placeContent: ["alignContent", "justifyContent"],
        placeItems: ["alignItems", "justifyItems"],
        placeSelf: ["alignSelf", "justifySelf"],
        textDecoration: [
          "textDecorationColor",
          "textDecorationLine",
          "textDecorationStyle"
        ],
        textEmphasis: ["textEmphasisColor", "textEmphasisStyle"],
        transition: [
          "transitionDelay",
          "transitionDuration",
          "transitionProperty",
          "transitionTimingFunction"
        ],
        wordWrap: ["overflowWrap"]
      },
      uppercasePattern = /([A-Z])/g,
      msPattern$1 = /^ms-/,
      badVendoredStyleNamePattern = /^(?:webkit|moz|o)[A-Z]/,
      msPattern = /^-ms-/,
      hyphenPattern = /-(.)/g,
      badStyleValueWithSemicolonPattern = /;\s*$/,
      warnedStyleNames = {},
      warnedStyleValues = {},
      warnedForNaNValue = !1,
      warnedForInfinityValue = !1,
      unitlessNumbers = new Set(
        "animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(
          " "
        )
      ),
      MATH_NAMESPACE = "http://www.w3.org/1998/Math/MathML",
      SVG_NAMESPACE = "http://www.w3.org/2000/svg",
      aliases = new Map([
        ["acceptCharset", "accept-charset"],
        ["htmlFor", "for"],
        ["httpEquiv", "http-equiv"],
        ["crossOrigin", "crossorigin"],
        ["accentHeight", "accent-height"],
        ["alignmentBaseline", "alignment-baseline"],
        ["arabicForm", "arabic-form"],
        ["baselineShift", "baseline-shift"],
        ["capHeight", "cap-height"],
        ["clipPath", "clip-path"],
        ["clipRule", "clip-rule"],
        ["colorInterpolation", "color-interpolation"],
        ["colorInterpolationFilters", "color-interpolation-filters"],
        ["colorProfile", "color-profile"],
        ["colorRendering", "color-rendering"],
        ["dominantBaseline", "dominant-baseline"],
        ["enableBackground", "enable-background"],
        ["fillOpacity", "fill-opacity"],
        ["fillRule", "fill-rule"],
        ["floodColor", "flood-color"],
        ["floodOpacity", "flood-opacity"],
        ["fontFamily", "font-family"],
        ["fontSize", "font-size"],
        ["fontSizeAdjust", "font-size-adjust"],
        ["fontStretch", "font-stretch"],
        ["fontStyle", "font-style"],
        ["fontVariant", "font-variant"],
        ["fontWeight", "font-weight"],
        ["glyphName", "glyph-name"],
        ["glyphOrientationHorizontal", "glyph-orientation-horizontal"],
        ["glyphOrientationVertical", "glyph-orientation-vertical"],
        ["horizAdvX", "horiz-adv-x"],
        ["horizOriginX", "horiz-origin-x"],
        ["imageRendering", "image-rendering"],
        ["letterSpacing", "letter-spacing"],
        ["lightingColor", "lighting-color"],
        ["markerEnd", "marker-end"],
        ["markerMid", "marker-mid"],
        ["markerStart", "marker-start"],
        ["overlinePosition", "overline-position"],
        ["overlineThickness", "overline-thickness"],
        ["paintOrder", "paint-order"],
        ["panose-1", "panose-1"],
        ["pointerEvents", "pointer-events"],
        ["renderingIntent", "rendering-intent"],
        ["shapeRendering", "shape-rendering"],
        ["stopColor", "stop-color"],
        ["stopOpacity", "stop-opacity"],
        ["strikethroughPosition", "strikethrough-position"],
        ["strikethroughThickness", "strikethrough-thickness"],
        ["strokeDasharray", "stroke-dasharray"],
        ["strokeDashoffset", "stroke-dashoffset"],
        ["strokeLinecap", "stroke-linecap"],
        ["strokeLinejoin", "stroke-linejoin"],
        ["strokeMiterlimit", "stroke-miterlimit"],
        ["strokeOpacity", "stroke-opacity"],
        ["strokeWidth", "stroke-width"],
        ["textAnchor", "text-anchor"],
        ["textDecoration", "text-decoration"],
        ["textRendering", "text-rendering"],
        ["transformOrigin", "transform-origin"],
        ["underlinePosition", "underline-position"],
        ["underlineThickness", "underline-thickness"],
        ["unicodeBidi", "unicode-bidi"],
        ["unicodeRange", "unicode-range"],
        ["unitsPerEm", "units-per-em"],
        ["vAlphabetic", "v-alphabetic"],
        ["vHanging", "v-hanging"],
        ["vIdeographic", "v-ideographic"],
        ["vMathematical", "v-mathematical"],
        ["vectorEffect", "vector-effect"],
        ["vertAdvY", "vert-adv-y"],
        ["vertOriginX", "vert-origin-x"],
        ["vertOriginY", "vert-origin-y"],
        ["wordSpacing", "word-spacing"],
        ["writingMode", "writing-mode"],
        ["xmlnsXlink", "xmlns:xlink"],
        ["xHeight", "x-height"]
      ]),
      possibleStandardNames = {
        accept: "accept",
        acceptcharset: "acceptCharset",
        "accept-charset": "acceptCharset",
        accesskey: "accessKey",
        action: "action",
        allowfullscreen: "allowFullScreen",
        alt: "alt",
        as: "as",
        async: "async",
        autocapitalize: "autoCapitalize",
        autocomplete: "autoComplete",
        autocorrect: "autoCorrect",
        autofocus: "autoFocus",
        autoplay: "autoPlay",
        autosave: "autoSave",
        capture: "capture",
        cellpadding: "cellPadding",
        cellspacing: "cellSpacing",
        challenge: "challenge",
        charset: "charSet",
        checked: "checked",
        children: "children",
        cite: "cite",
        class: "className",
        classid: "classID",
        classname: "className",
        cols: "cols",
        colspan: "colSpan",
        content: "content",
        contenteditable: "contentEditable",
        contextmenu: "contextMenu",
        controls: "controls",
        controlslist: "controlsList",
        coords: "coords",
        crossorigin: "crossOrigin",
        dangerouslysetinnerhtml: "dangerouslySetInnerHTML",
        data: "data",
        datetime: "dateTime",
        default: "default",
        defaultchecked: "defaultChecked",
        defaultvalue: "defaultValue",
        defer: "defer",
        dir: "dir",
        disabled: "disabled",
        disablepictureinpicture: "disablePictureInPicture",
        disableremoteplayback: "disableRemotePlayback",
        download: "download",
        draggable: "draggable",
        enctype: "encType",
        enterkeyhint: "enterKeyHint",
        fetchpriority: "fetchPriority",
        for: "htmlFor",
        form: "form",
        formmethod: "formMethod",
        formaction: "formAction",
        formenctype: "formEncType",
        formnovalidate: "formNoValidate",
        formtarget: "formTarget",
        frameborder: "frameBorder",
        headers: "headers",
        height: "height",
        hidden: "hidden",
        high: "high",
        href: "href",
        hreflang: "hrefLang",
        htmlfor: "htmlFor",
        httpequiv: "httpEquiv",
        "http-equiv": "httpEquiv",
        icon: "icon",
        id: "id",
        imagesizes: "imageSizes",
        imagesrcset: "imageSrcSet",
        inert: "inert",
        innerhtml: "innerHTML",
        inputmode: "inputMode",
        integrity: "integrity",
        is: "is",
        itemid: "itemID",
        itemprop: "itemProp",
        itemref: "itemRef",
        itemscope: "itemScope",
        itemtype: "itemType",
        keyparams: "keyParams",
        keytype: "keyType",
        kind: "kind",
        label: "label",
        lang: "lang",
        list: "list",
        loop: "loop",
        low: "low",
        manifest: "manifest",
        marginwidth: "marginWidth",
        marginheight: "marginHeight",
        max: "max",
        maxlength: "maxLength",
        media: "media",
        mediagroup: "mediaGroup",
        method: "method",
        min: "min",
        minlength: "minLength",
        multiple: "multiple",
        muted: "muted",
        name: "name",
        nomodule: "noModule",
        nonce: "nonce",
        novalidate: "noValidate",
        open: "open",
        optimum: "optimum",
        pattern: "pattern",
        placeholder: "placeholder",
        playsinline: "playsInline",
        poster: "poster",
        preload: "preload",
        profile: "profile",
        radiogroup: "radioGroup",
        readonly: "readOnly",
        referrerpolicy: "referrerPolicy",
        rel: "rel",
        required: "required",
        reversed: "reversed",
        role: "role",
        rows: "rows",
        rowspan: "rowSpan",
        sandbox: "sandbox",
        scope: "scope",
        scoped: "scoped",
        scrolling: "scrolling",
        seamless: "seamless",
        selected: "selected",
        shape: "shape",
        size: "size",
        sizes: "sizes",
        span: "span",
        spellcheck: "spellCheck",
        src: "src",
        srcdoc: "srcDoc",
        srclang: "srcLang",
        srcset: "srcSet",
        start: "start",
        step: "step",
        style: "style",
        summary: "summary",
        tabindex: "tabIndex",
        target: "target",
        title: "title",
        type: "type",
        usemap: "useMap",
        value: "value",
        width: "width",
        wmode: "wmode",
        wrap: "wrap",
        about: "about",
        accentheight: "accentHeight",
        "accent-height": "accentHeight",
        accumulate: "accumulate",
        additive: "additive",
        alignmentbaseline: "alignmentBaseline",
        "alignment-baseline": "alignmentBaseline",
        allowreorder: "allowReorder",
        alphabetic: "alphabetic",
        amplitude: "amplitude",
        arabicform: "arabicForm",
        "arabic-form": "arabicForm",
        ascent: "ascent",
        attributename: "attributeName",
        attributetype: "attributeType",
        autoreverse: "autoReverse",
        azimuth: "azimuth",
        basefrequency: "baseFrequency",
        baselineshift: "baselineShift",
        "baseline-shift": "baselineShift",
        baseprofile: "baseProfile",
        bbox: "bbox",
        begin: "begin",
        bias: "bias",
        by: "by",
        calcmode: "calcMode",
        capheight: "capHeight",
        "cap-height": "capHeight",
        clip: "clip",
        clippath: "clipPath",
        "clip-path": "clipPath",
        clippathunits: "clipPathUnits",
        cliprule: "clipRule",
        "clip-rule": "clipRule",
        color: "color",
        colorinterpolation: "colorInterpolation",
        "color-interpolation": "colorInterpolation",
        colorinterpolationfilters: "colorInterpolationFilters",
        "color-interpolation-filters": "colorInterpolationFilters",
        colorprofile: "colorProfile",
        "color-profile": "colorProfile",
        colorrendering: "colorRendering",
        "color-rendering": "colorRendering",
        contentscripttype: "contentScriptType",
        contentstyletype: "contentStyleType",
        cursor: "cursor",
        cx: "cx",
        cy: "cy",
        d: "d",
        datatype: "datatype",
        decelerate: "decelerate",
        descent: "descent",
        diffuseconstant: "diffuseConstant",
        direction: "direction",
        display: "display",
        divisor: "divisor",
        dominantbaseline: "dominantBaseline",
        "dominant-baseline": "dominantBaseline",
        dur: "dur",
        dx: "dx",
        dy: "dy",
        edgemode: "edgeMode",
        elevation: "elevation",
        enablebackground: "enableBackground",
        "enable-background": "enableBackground",
        end: "end",
        exponent: "exponent",
        externalresourcesrequired: "externalResourcesRequired",
        fill: "fill",
        fillopacity: "fillOpacity",
        "fill-opacity": "fillOpacity",
        fillrule: "fillRule",
        "fill-rule": "fillRule",
        filter: "filter",
        filterres: "filterRes",
        filterunits: "filterUnits",
        floodopacity: "floodOpacity",
        "flood-opacity": "floodOpacity",
        floodcolor: "floodColor",
        "flood-color": "floodColor",
        focusable: "focusable",
        fontfamily: "fontFamily",
        "font-family": "fontFamily",
        fontsize: "fontSize",
        "font-size": "fontSize",
        fontsizeadjust: "fontSizeAdjust",
        "font-size-adjust": "fontSizeAdjust",
        fontstretch: "fontStretch",
        "font-stretch": "fontStretch",
        fontstyle: "fontStyle",
        "font-style": "fontStyle",
        fontvariant: "fontVariant",
        "font-variant": "fontVariant",
        fontweight: "fontWeight",
        "font-weight": "fontWeight",
        format: "format",
        from: "from",
        fx: "fx",
        fy: "fy",
        g1: "g1",
        g2: "g2",
        glyphname: "glyphName",
        "glyph-name": "glyphName",
        glyphorientationhorizontal: "glyphOrientationHorizontal",
        "glyph-orientation-horizontal": "glyphOrientationHorizontal",
        glyphorientationvertical: "glyphOrientationVertical",
        "glyph-orientation-vertical": "glyphOrientationVertical",
        glyphref: "glyphRef",
        gradienttransform: "gradientTransform",
        gradientunits: "gradientUnits",
        hanging: "hanging",
        horizadvx: "horizAdvX",
        "horiz-adv-x": "horizAdvX",
        horizoriginx: "horizOriginX",
        "horiz-origin-x": "horizOriginX",
        ideographic: "ideographic",
        imagerendering: "imageRendering",
        "image-rendering": "imageRendering",
        in2: "in2",
        in: "in",
        inlist: "inlist",
        intercept: "intercept",
        k1: "k1",
        k2: "k2",
        k3: "k3",
        k4: "k4",
        k: "k",
        kernelmatrix: "kernelMatrix",
        kernelunitlength: "kernelUnitLength",
        kerning: "kerning",
        keypoints: "keyPoints",
        keysplines: "keySplines",
        keytimes: "keyTimes",
        lengthadjust: "lengthAdjust",
        letterspacing: "letterSpacing",
        "letter-spacing": "letterSpacing",
        lightingcolor: "lightingColor",
        "lighting-color": "lightingColor",
        limitingconeangle: "limitingConeAngle",
        local: "local",
        markerend: "markerEnd",
        "marker-end": "markerEnd",
        markerheight: "markerHeight",
        markermid: "markerMid",
        "marker-mid": "markerMid",
        markerstart: "markerStart",
        "marker-start": "markerStart",
        markerunits: "markerUnits",
        markerwidth: "markerWidth",
        mask: "mask",
        maskcontentunits: "maskContentUnits",
        maskunits: "maskUnits",
        mathematical: "mathematical",
        mode: "mode",
        numoctaves: "numOctaves",
        offset: "offset",
        opacity: "opacity",
        operator: "operator",
        order: "order",
        orient: "orient",
        orientation: "orientation",
        origin: "origin",
        overflow: "overflow",
        overlineposition: "overlinePosition",
        "overline-position": "overlinePosition",
        overlinethickness: "overlineThickness",
        "overline-thickness": "overlineThickness",
        paintorder: "paintOrder",
        "paint-order": "paintOrder",
        panose1: "panose1",
        "panose-1": "panose1",
        pathlength: "pathLength",
        patterncontentunits: "patternContentUnits",
        patterntransform: "patternTransform",
        patternunits: "patternUnits",
        pointerevents: "pointerEvents",
        "pointer-events": "pointerEvents",
        points: "points",
        pointsatx: "pointsAtX",
        pointsaty: "pointsAtY",
        pointsatz: "pointsAtZ",
        popover: "popover",
        popovertarget: "popoverTarget",
        popovertargetaction: "popoverTargetAction",
        prefix: "prefix",
        preservealpha: "preserveAlpha",
        preserveaspectratio: "preserveAspectRatio",
        primitiveunits: "primitiveUnits",
        property: "property",
        r: "r",
        radius: "radius",
        refx: "refX",
        refy: "refY",
        renderingintent: "renderingIntent",
        "rendering-intent": "renderingIntent",
        repeatcount: "repeatCount",
        repeatdur: "repeatDur",
        requiredextensions: "requiredExtensions",
        requiredfeatures: "requiredFeatures",
        resource: "resource",
        restart: "restart",
        result: "result",
        results: "results",
        rotate: "rotate",
        rx: "rx",
        ry: "ry",
        scale: "scale",
        security: "security",
        seed: "seed",
        shaperendering: "shapeRendering",
        "shape-rendering": "shapeRendering",
        slope: "slope",
        spacing: "spacing",
        specularconstant: "specularConstant",
        specularexponent: "specularExponent",
        speed: "speed",
        spreadmethod: "spreadMethod",
        startoffset: "startOffset",
        stddeviation: "stdDeviation",
        stemh: "stemh",
        stemv: "stemv",
        stitchtiles: "stitchTiles",
        stopcolor: "stopColor",
        "stop-color": "stopColor",
        stopopacity: "stopOpacity",
        "stop-opacity": "stopOpacity",
        strikethroughposition: "strikethroughPosition",
        "strikethrough-position": "strikethroughPosition",
        strikethroughthickness: "strikethroughThickness",
        "strikethrough-thickness": "strikethroughThickness",
        string: "string",
        stroke: "stroke",
        strokedasharray: "strokeDasharray",
        "stroke-dasharray": "strokeDasharray",
        strokedashoffset: "strokeDashoffset",
        "stroke-dashoffset": "strokeDashoffset",
        strokelinecap: "strokeLinecap",
        "stroke-linecap": "strokeLinecap",
        strokelinejoin: "strokeLinejoin",
        "stroke-linejoin": "strokeLinejoin",
        strokemiterlimit: "strokeMiterlimit",
        "stroke-miterlimit": "strokeMiterlimit",
        strokewidth: "strokeWidth",
        "stroke-width": "strokeWidth",
        strokeopacity: "strokeOpacity",
        "stroke-opacity": "strokeOpacity",
        suppresscontenteditablewarning: "suppressContentEditableWarning",
        suppresshydrationwarning: "suppressHydrationWarning",
        surfacescale: "surfaceScale",
        systemlanguage: "systemLanguage",
        tablevalues: "tableValues",
        targetx: "targetX",
        targety: "targetY",
        textanchor: "textAnchor",
        "text-anchor": "textAnchor",
        textdecoration: "textDecoration",
        "text-decoration": "textDecoration",
        textlength: "textLength",
        textrendering: "textRendering",
        "text-rendering": "textRendering",
        to: "to",
        transform: "transform",
        transformorigin: "transformOrigin",
        "transform-origin": "transformOrigin",
        typeof: "typeof",
        u1: "u1",
        u2: "u2",
        underlineposition: "underlinePosition",
        "underline-position": "underlinePosition",
        underlinethickness: "underlineThickness",
        "underline-thickness": "underlineThickness",
        unicode: "unicode",
        unicodebidi: "unicodeBidi",
        "unicode-bidi": "unicodeBidi",
        unicoderange: "unicodeRange",
        "unicode-range": "unicodeRange",
        unitsperem: "unitsPerEm",
        "units-per-em": "unitsPerEm",
        unselectable: "unselectable",
        valphabetic: "vAlphabetic",
        "v-alphabetic": "vAlphabetic",
        values: "values",
        vectoreffect: "vectorEffect",
        "vector-effect": "vectorEffect",
        version: "version",
        vertadvy: "vertAdvY",
        "vert-adv-y": "vertAdvY",
        vertoriginx: "vertOriginX",
        "vert-origin-x": "vertOriginX",
        vertoriginy: "vertOriginY",
        "vert-origin-y": "vertOriginY",
        vhanging: "vHanging",
        "v-hanging": "vHanging",
        videographic: "vIdeographic",
        "v-ideographic": "vIdeographic",
        viewbox: "viewBox",
        viewtarget: "viewTarget",
        visibility: "visibility",
        vmathematical: "vMathematical",
        "v-mathematical": "vMathematical",
        vocab: "vocab",
        widths: "widths",
        wordspacing: "wordSpacing",
        "word-spacing": "wordSpacing",
        writingmode: "writingMode",
        "writing-mode": "writingMode",
        x1: "x1",
        x2: "x2",
        x: "x",
        xchannelselector: "xChannelSelector",
        xheight: "xHeight",
        "x-height": "xHeight",
        xlinkactuate: "xlinkActuate",
        "xlink:actuate": "xlinkActuate",
        xlinkarcrole: "xlinkArcrole",
        "xlink:arcrole": "xlinkArcrole",
        xlinkhref: "xlinkHref",
        "xlink:href": "xlinkHref",
        xlinkrole: "xlinkRole",
        "xlink:role": "xlinkRole",
        xlinkshow: "xlinkShow",
        "xlink:show": "xlinkShow",
        xlinktitle: "xlinkTitle",
        "xlink:title": "xlinkTitle",
        xlinktype: "xlinkType",
        "xlink:type": "xlinkType",
        xmlbase: "xmlBase",
        "xml:base": "xmlBase",
        xmllang: "xmlLang",
        "xml:lang": "xmlLang",
        xmlns: "xmlns",
        "xml:space": "xmlSpace",
        xmlnsxlink: "xmlnsXlink",
        "xmlns:xlink": "xmlnsXlink",
        xmlspace: "xmlSpace",
        y1: "y1",
        y2: "y2",
        y: "y",
        ychannelselector: "yChannelSelector",
        z: "z",
        zoomandpan: "zoomAndPan"
      },
      ariaProperties = {
        "aria-current": 0,
        "aria-description": 0,
        "aria-details": 0,
        "aria-disabled": 0,
        "aria-hidden": 0,
        "aria-invalid": 0,
        "aria-keyshortcuts": 0,
        "aria-label": 0,
        "aria-roledescription": 0,
        "aria-autocomplete": 0,
        "aria-checked": 0,
        "aria-expanded": 0,
        "aria-haspopup": 0,
        "aria-level": 0,
        "aria-modal": 0,
        "aria-multiline": 0,
        "aria-multiselectable": 0,
        "aria-orientation": 0,
        "aria-placeholder": 0,
        "aria-pressed": 0,
        "aria-readonly": 0,
        "aria-required": 0,
        "aria-selected": 0,
        "aria-sort": 0,
        "aria-valuemax": 0,
        "aria-valuemin": 0,
        "aria-valuenow": 0,
        "aria-valuetext": 0,
        "aria-atomic": 0,
        "aria-busy": 0,
        "aria-live": 0,
        "aria-relevant": 0,
        "aria-dropeffect": 0,
        "aria-grabbed": 0,
        "aria-activedescendant": 0,
        "aria-colcount": 0,
        "aria-colindex": 0,
        "aria-colspan": 0,
        "aria-controls": 0,
        "aria-describedby": 0,
        "aria-errormessage": 0,
        "aria-flowto": 0,
        "aria-labelledby": 0,
        "aria-owns": 0,
        "aria-posinset": 0,
        "aria-rowcount": 0,
        "aria-rowindex": 0,
        "aria-rowspan": 0,
        "aria-setsize": 0,
        "aria-braillelabel": 0,
        "aria-brailleroledescription": 0,
        "aria-colindextext": 0,
        "aria-rowindextext": 0
      },
      warnedProperties$1 = {},
      rARIA$1 = RegExp(
        "^(aria)-[: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]*$"
      ),
      rARIACamel$1 = RegExp(
        "^(aria)[A-Z][: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]*$"
      ),
      didWarnValueNull = !1,
      warnedProperties = {},
      EVENT_NAME_REGEX = /^on./,
      INVALID_EVENT_NAME_REGEX = /^on[^A-Z]/,
      rARIA = RegExp(
        "^(aria)-[: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]*$"
      ),
      rARIACamel = RegExp(
        "^(aria)[A-Z][: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]*$"
      ),
      isJavaScriptProtocol =
        /^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i,
      currentReplayingEvent = null,
      restoreTarget = null,
      restoreQueue = null,
      isInsideEventHandler = !1,
      canUseDOM = !(
        "undefined" === typeof window ||
        "undefined" === typeof window.document ||
        "undefined" === typeof window.document.createElement
      ),
      passiveBrowserEventsSupported = !1;
    if (canUseDOM)
      try {
        var options$jscomp$0 = {};
        Object.defineProperty(options$jscomp$0, "passive", {
          get: function () {
            passiveBrowserEventsSupported = !0;
          }
        });
        window.addEventListener("test", options$jscomp$0, options$jscomp$0);
        window.removeEventListener("test", options$jscomp$0, options$jscomp$0);
      } catch (e) {
        passiveBrowserEventsSupported = !1;
      }
    var root = null,
      startText = null,
      fallbackText = null,
      EventInterface = {
        eventPhase: 0,
        bubbles: 0,
        cancelable: 0,
        timeStamp: function (event) {
          return event.timeStamp || Date.now();
        },
        defaultPrevented: 0,
        isTrusted: 0
      },
      SyntheticEvent = createSyntheticEvent(EventInterface),
      UIEventInterface = assign({}, EventInterface, { view: 0, detail: 0 }),
      SyntheticUIEvent = createSyntheticEvent(UIEventInterface),
      lastMovementX,
      lastMovementY,
      lastMouseEvent,
      MouseEventInterface = assign({}, UIEventInterface, {
        screenX: 0,
        screenY: 0,
        clientX: 0,
        clientY: 0,
        pageX: 0,
        pageY: 0,
        ctrlKey: 0,
        shiftKey: 0,
        altKey: 0,
        metaKey: 0,
        getModifierState: getEventModifierState,
        button: 0,
        buttons: 0,
        relatedTarget: function (event) {
          return void 0 === event.relatedTarget
            ? event.fromElement === event.srcElement
              ? event.toElement
              : event.fromElement
            : event.relatedTarget;
        },
        movementX: function (event) {
          if ("movementX" in event) return event.movementX;
          event !== lastMouseEvent &&
            (lastMouseEvent && "mousemove" === event.type
              ? ((lastMovementX = event.screenX - lastMouseEvent.screenX),
                (lastMovementY = event.screenY - lastMouseEvent.screenY))
              : (lastMovementY = lastMovementX = 0),
            (lastMouseEvent = event));
          return lastMovementX;
        },
        movementY: function (event) {
          return "movementY" in event ? event.movementY : lastMovementY;
        }
      }),
      SyntheticMouseEvent = createSyntheticEvent(MouseEventInterface),
      DragEventInterface = assign({}, MouseEventInterface, { dataTransfer: 0 }),
      SyntheticDragEvent = createSyntheticEvent(DragEventInterface),
      FocusEventInterface = assign({}, UIEventInterface, { relatedTarget: 0 }),
      SyntheticFocusEvent = createSyntheticEvent(FocusEventInterface),
      AnimationEventInterface = assign({}, EventInterface, {
        animationName: 0,
        elapsedTime: 0,
        pseudoElement: 0
      }),
      SyntheticAnimationEvent = createSyntheticEvent(AnimationEventInterface),
      ClipboardEventInterface = assign({}, EventInterface, {
        clipboardData: function (event) {
          return "clipboardData" in event
            ? event.clipboardData
            : window.clipboardData;
        }
      }),
      SyntheticClipboardEvent = createSyntheticEvent(ClipboardEventInterface),
      CompositionEventInterface = assign({}, EventInterface, { data: 0 }),
      SyntheticCompositionEvent = createSyntheticEvent(
        CompositionEventInterface
      ),
      SyntheticInputEvent = SyntheticCompositionEvent,
      normalizeKey = {
        Esc: "Escape",
        Spacebar: " ",
        Left: "ArrowLeft",
        Up: "ArrowUp",
        Right: "ArrowRight",
        Down: "ArrowDown",
        Del: "Delete",
        Win: "OS",
        Menu: "ContextMenu",
        Apps: "ContextMenu",
        Scroll: "ScrollLock",
        MozPrintableKey: "Unidentified"
      },
      translateToKey = {
        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"
      },
      modifierKeyToProp = {
        Alt: "altKey",
        Control: "ctrlKey",
        Meta: "metaKey",
        Shift: "shiftKey"
      },
      KeyboardEventInterface = assign({}, UIEventInterface, {
        key: function (nativeEvent) {
          if (nativeEvent.key) {
            var key = normalizeKey[nativeEvent.key] || nativeEvent.key;
            if ("Unidentified" !== key) return key;
          }
          return "keypress" === nativeEvent.type
            ? ((nativeEvent = getEventCharCode(nativeEvent)),
              13 === nativeEvent ? "Enter" : String.fromCharCode(nativeEvent))
            : "keydown" === nativeEvent.type || "keyup" === nativeEvent.type
              ? translateToKey[nativeEvent.keyCode] || "Unidentified"
              : "";
        },
        code: 0,
        location: 0,
        ctrlKey: 0,
        shiftKey: 0,
        altKey: 0,
        metaKey: 0,
        repeat: 0,
        locale: 0,
        getModifierState: getEventModifierState,
        charCode: function (event) {
          return "keypress" === event.type ? getEventCharCode(event) : 0;
        },
        keyCode: function (event) {
          return "keydown" === event.type || "keyup" === event.type
            ? event.keyCode
            : 0;
        },
        which: function (event) {
          return "keypress" === event.type
            ? getEventCharCode(event)
            : "keydown" === event.type || "keyup" === event.type
              ? event.keyCode
              : 0;
        }
      }),
      SyntheticKeyboardEvent = createSyntheticEvent(KeyboardEventInterface),
      PointerEventInterface = assign({}, MouseEventInterface, {
        pointerId: 0,
        width: 0,
        height: 0,
        pressure: 0,
        tangentialPressure: 0,
        tiltX: 0,
        tiltY: 0,
        twist: 0,
        pointerType: 0,
        isPrimary: 0
      }),
      SyntheticPointerEvent = createSyntheticEvent(PointerEventInterface),
      TouchEventInterface = assign({}, UIEventInterface, {
        touches: 0,
        targetTouches: 0,
        changedTouches: 0,
        altKey: 0,
        metaKey: 0,
        ctrlKey: 0,
        shiftKey: 0,
        getModifierState: getEventModifierState
      }),
      SyntheticTouchEvent = createSyntheticEvent(TouchEventInterface),
      TransitionEventInterface = assign({}, EventInterface, {
        propertyName: 0,
        elapsedTime: 0,
        pseudoElement: 0
      }),
      SyntheticTransitionEvent = createSyntheticEvent(TransitionEventInterface),
      WheelEventInterface = assign({}, MouseEventInterface, {
        deltaX: function (event) {
          return "deltaX" in event
            ? event.deltaX
            : "wheelDeltaX" in event
              ? -event.wheelDeltaX
              : 0;
        },
        deltaY: function (event) {
          return "deltaY" in event
            ? event.deltaY
            : "wheelDeltaY" in event
              ? -event.wheelDeltaY
              : "wheelDelta" in event
                ? -event.wheelDelta
                : 0;
        },
        deltaZ: 0,
        deltaMode: 0
      }),
      SyntheticWheelEvent = createSyntheticEvent(WheelEventInterface),
      ToggleEventInterface = assign({}, EventInterface, {
        newState: 0,
        oldState: 0
      }),
      SyntheticToggleEvent = createSyntheticEvent(ToggleEventInterface),
      END_KEYCODES = [9, 13, 27, 32],
      START_KEYCODE = 229,
      canUseCompositionEvent = canUseDOM && "CompositionEvent" in window,
      documentMode = null;
    canUseDOM &&
      "documentMode" in document &&
      (documentMode = document.documentMode);
    var canUseTextInputEvent =
        canUseDOM && "TextEvent" in window && !documentMode,
      useFallbackCompositionData =
        canUseDOM &&
        (!canUseCompositionEvent ||
          (documentMode && 8 < documentMode && 11 >= documentMode)),
      SPACEBAR_CODE = 32,
      SPACEBAR_CHAR = String.fromCharCode(SPACEBAR_CODE),
      hasSpaceKeypress = !1,
      isComposing = !1,
      supportedInputTypes = {
        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
      },
      activeElement$1 = null,
      activeElementInst$1 = null,
      isInputEventSupported = !1;
    canUseDOM &&
      (isInputEventSupported =
        isEventSupported("input") &&
        (!document.documentMode || 9 < document.documentMode));
    var objectIs = "function" === typeof Object.is ? Object.is : is,
      skipSelectionChangeEvent =
        canUseDOM && "documentMode" in document && 11 >= document.documentMode,
      activeElement = null,
      activeElementInst = null,
      lastSelection = null,
      mouseDown = !1,
      vendorPrefixes = {
        animationend: makePrefixMap("Animation", "AnimationEnd"),
        animationiteration: makePrefixMap("Animation", "AnimationIteration"),
        animationstart: makePrefixMap("Animation", "AnimationStart"),
        transitionrun: makePrefixMap("Transition", "TransitionRun"),
        transitionstart: makePrefixMap("Transition", "TransitionStart"),
        transitioncancel: makePrefixMap("Transition", "TransitionCancel"),
        transitionend: makePrefixMap("Transition", "TransitionEnd")
      },
      prefixedEventNames = {},
      style = {};
    canUseDOM &&
      ((style = document.createElement("div").style),
      "AnimationEvent" in window ||
        (delete vendorPrefixes.animationend.animation,
        delete vendorPrefixes.animationiteration.animation,
        delete vendorPrefixes.animationstart.animation),
      "TransitionEvent" in window ||
        delete vendorPrefixes.transitionend.transition);
    var ANIMATION_END = getVendorPrefixedEventName("animationend"),
      ANIMATION_ITERATION = getVendorPrefixedEventName("animationiteration"),
      ANIMATION_START = getVendorPrefixedEventName("animationstart"),
      TRANSITION_RUN = getVendorPrefixedEventName("transitionrun"),
      TRANSITION_START = getVendorPrefixedEventName("transitionstart"),
      TRANSITION_CANCEL = getVendorPrefixedEventName("transitioncancel"),
      TRANSITION_END = getVendorPrefixedEventName("transitionend"),
      topLevelEventsToReactNames = new Map(),
      simpleEventPluginEvents =
        "abort auxClick beforeToggle 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(
          " "
        );
    simpleEventPluginEvents.push("scrollEnd");
    var lastResetTime = 0;
    if (
      "object" === typeof performance &&
      "function" === typeof performance.now
    ) {
      var localPerformance = performance;
      var getCurrentTime = function () {
        return localPerformance.now();
      };
    } else {
      var localDate = Date;
      getCurrentTime = function () {
        return localDate.now();
      };
    }
    var reportGlobalError =
        "function" === typeof reportError
          ? reportError
          : function (error) {
              if (
                "object" === typeof window &&
                "function" === typeof window.ErrorEvent
              ) {
                var event = new window.ErrorEvent("error", {
                  bubbles: !0,
                  cancelable: !0,
                  message:
                    "object" === typeof error &&
                    null !== error &&
                    "string" === typeof error.message
                      ? String(error.message)
                      : String(error),
                  error: error
                });
                if (!window.dispatchEvent(event)) return;
              } else if (
                "object" === typeof process &&
                "function" === typeof process.emit
              ) {
                process.emit("uncaughtException", error);
                return;
              }
              console.error(error);
            },
      OMITTED_PROP_ERROR =
        "This object has been omitted by React in the console log to avoid sending too much data from the server. Try logging smaller or more specific objects.",
      EMPTY_ARRAY = 0,
      COMPLEX_ARRAY = 1,
      PRIMITIVE_ARRAY = 2,
      ENTRIES_ARRAY = 3,
      REMOVED = "\u2013\u00a0",
      ADDED = "+\u00a0",
      UNCHANGED = "\u2007\u00a0",
      supportsUserTiming =
        "undefined" !== typeof console &&
        "function" === typeof console.timeStamp &&
        "undefined" !== typeof performance &&
        "function" === typeof performance.measure,
      COMPONENTS_TRACK = "Components \u269b",
      LANES_TRACK_GROUP = "Scheduler \u269b",
      currentTrack = "Blocking",
      alreadyWarnedForDeepEquality = !1,
      reusableComponentDevToolDetails = {
        color: "primary",
        properties: null,
        tooltipText: "",
        track: COMPONENTS_TRACK
      },
      reusableComponentOptions = {
        start: -0,
        end: -0,
        detail: { devtools: reusableComponentDevToolDetails }
      },
      resuableChangedPropsEntry = ["Changed Props", ""],
      DEEP_EQUALITY_WARNING =
        "This component received deeply equal props. It might benefit from useMemo or the React Compiler in its owner.",
      reusableDeeplyEqualPropsEntry = ["Changed Props", DEEP_EQUALITY_WARNING],
      OffscreenVisible = 1,
      OffscreenPassiveEffectsConnected = 2,
      concurrentQueues = [],
      concurrentQueuesIndex = 0,
      concurrentlyUpdatedLanes = 0,
      emptyContextObject = {};
    Object.freeze(emptyContextObject);
    var resolveFamily = null,
      failedBoundaries = null,
      NoMode = 0,
      ConcurrentMode = 1,
      ProfileMode = 2,
      StrictLegacyMode = 8,
      StrictEffectsMode = 16,
      SuspenseyImagesMode = 32;
    var hasBadMapPolyfill = !1;
    try {
      var nonExtensibleObject = Object.preventExtensions({});
      new Map([[nonExtensibleObject, null]]);
      new Set([nonExtensibleObject]);
    } catch (e$3) {
      hasBadMapPolyfill = !0;
    }
    var CapturedStacks = new WeakMap(),
      forkStack = [],
      forkStackIndex = 0,
      treeForkProvider = null,
      treeForkCount = 0,
      idStack = [],
      idStackIndex = 0,
      treeContextProvider = null,
      treeContextId = 1,
      treeContextOverflow = "",
      hydrationParentFiber = null,
      nextHydratableInstance = null,
      isHydrating = !1,
      didSuspendOrErrorDEV = !1,
      hydrationDiffRootDEV = null,
      hydrationErrors = null,
      rootOrSingletonContext = !1,
      HydrationMismatchException = Error(
        "Hydration Mismatch Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."
      ),
      valueCursor = createCursor(null);
    var rendererCursorDEV = createCursor(null);
    var rendererSigil = {};
    var currentlyRenderingFiber$1 = null,
      lastContextDependency = null,
      isDisallowedContextReadInDEV = !1,
      AbortControllerLocal =
        "undefined" !== typeof AbortController
          ? AbortController
          : function () {
              var listeners = [],
                signal = (this.signal = {
                  aborted: !1,
                  addEventListener: function (type, listener) {
                    listeners.push(listener);
                  }
                });
              this.abort = function () {
                signal.aborted = !0;
                listeners.forEach(function (listener) {
                  return listener();
                });
              };
            },
      scheduleCallback$2 = Scheduler.unstable_scheduleCallback,
      NormalPriority = Scheduler.unstable_NormalPriority,
      CacheContext = {
        $$typeof: REACT_CONTEXT_TYPE,
        Consumer: null,
        Provider: null,
        _currentValue: null,
        _currentValue2: null,
        _threadCount: 0,
        _currentRenderer: null,
        _currentRenderer2: null
      },
      now = Scheduler.unstable_now,
      createTask = console.createTask
        ? console.createTask
        : function () {
            return null;
          },
      SPAWNED_UPDATE = 1,
      PINGED_UPDATE = 2,
      renderStartTime = -0,
      commitStartTime = -0,
      commitEndTime = -0,
      commitErrors = null,
      profilerStartTime = -1.1,
      profilerEffectDuration = -0,
      componentEffectDuration = -0,
      componentEffectStartTime = -1.1,
      componentEffectEndTime = -1.1,
      componentEffectErrors = null,
      componentEffectSpawnedUpdate = !1,
      blockingClampTime = -0,
      blockingUpdateTime = -1.1,
      blockingUpdateTask = null,
      blockingUpdateType = 0,
      blockingUpdateMethodName = null,
      blockingUpdateComponentName = null,
      blockingEventTime = -1.1,
      blockingEventType = null,
      blockingEventRepeatTime = -1.1,
      blockingSuspendedTime = -1.1,
      transitionClampTime = -0,
      transitionStartTime = -1.1,
      transitionUpdateTime = -1.1,
      transitionUpdateType = 0,
      transitionUpdateTask = null,
      transitionUpdateMethodName = null,
      transitionUpdateComponentName = null,
      transitionEventTime = -1.1,
      transitionEventType = null,
      transitionEventRepeatTime = -1.1,
      transitionSuspendedTime = -1.1,
      retryClampTime = -0,
      idleClampTime = -0,
      animatingLanes = 0,
      animatingTask = null,
      yieldReason = 0,
      yieldStartTime = -1.1,
      currentUpdateIsNested = !1,
      nestedUpdateScheduled = !1,
      currentEntangledListeners = null,
      currentEntangledPendingCount = 0,
      currentEntangledLane = 0,
      currentEntangledActionThenable = null,
      prevOnStartTransitionFinish = ReactSharedInternals.S;
    ReactSharedInternals.S = function (transition, returnValue) {
      globalMostRecentTransitionTime = now$1();
      if (
        "object" === typeof returnValue &&
        null !== returnValue &&
        "function" === typeof returnValue.then
      ) {
        if (0 > transitionStartTime && 0 > transitionUpdateTime) {
          transitionStartTime = now();
          var newEventTime = resolveEventTimeStamp(),
            newEventType = resolveEventType();
          if (
            newEventTime !== transitionEventRepeatTime ||
            newEventType !== transitionEventType
          )
            transitionEventRepeatTime = -1.1;
          transitionEventTime = newEventTime;
          transitionEventType = newEventType;
        }
        entangleAsyncAction(transition, returnValue);
      }
      null !== prevOnStartTransitionFinish &&
        prevOnStartTransitionFinish(transition, returnValue);
    };
    var resumedCache = createCursor(null),
      ReactStrictModeWarnings = {
        recordUnsafeLifecycleWarnings: function () {},
        flushPendingUnsafeLifecycleWarnings: function () {},
        recordLegacyContextWarning: function () {},
        flushLegacyContextWarning: function () {},
        discardPendingWarnings: function () {}
      },
      pendingComponentWillMountWarnings = [],
      pendingUNSAFE_ComponentWillMountWarnings = [],
      pendingComponentWillReceivePropsWarnings = [],
      pendingUNSAFE_ComponentWillReceivePropsWarnings = [],
      pendingComponentWillUpdateWarnings = [],
      pendingUNSAFE_ComponentWillUpdateWarnings = [],
      didWarnAboutUnsafeLifecycles = new Set();
    ReactStrictModeWarnings.recordUnsafeLifecycleWarnings = function (
      fiber,
      instance
    ) {
      didWarnAboutUnsafeLifecycles.has(fiber.type) ||
        ("function" === typeof instance.componentWillMount &&
          !0 !== instance.componentWillMount.__suppressDeprecationWarning &&
          pendingComponentWillMountWarnings.push(fiber),
        fiber.mode & StrictLegacyMode &&
          "function" === typeof instance.UNSAFE_componentWillMount &&
          pendingUNSAFE_ComponentWillMountWarnings.push(fiber),
        "function" === typeof instance.componentWillReceiveProps &&
          !0 !==
            instance.componentWillReceiveProps.__suppressDeprecationWarning &&
          pendingComponentWillReceivePropsWarnings.push(fiber),
        fiber.mode & StrictLegacyMode &&
          "function" === typeof instance.UNSAFE_componentWillReceiveProps &&
          pendingUNSAFE_ComponentWillReceivePropsWarnings.push(fiber),
        "function" === typeof instance.componentWillUpdate &&
          !0 !== instance.componentWillUpdate.__suppressDeprecationWarning &&
          pendingComponentWillUpdateWarnings.push(fiber),
        fiber.mode & StrictLegacyMode &&
          "function" === typeof instance.UNSAFE_componentWillUpdate &&
          pendingUNSAFE_ComponentWillUpdateWarnings.push(fiber));
    };
    ReactStrictModeWarnings.flushPendingUnsafeLifecycleWarnings = function () {
      var componentWillMountUniqueNames = new Set();
      0 < pendingComponentWillMountWarnings.length &&
        (pendingComponentWillMountWarnings.forEach(function (fiber) {
          componentWillMountUniqueNames.add(
            getComponentNameFromFiber(fiber) || "Component"
          );
          didWarnAboutUnsafeLifecycles.add(fiber.type);
        }),
        (pendingComponentWillMountWarnings = []));
      var UNSAFE_componentWillMountUniqueNames = new Set();
      0 < pendingUNSAFE_ComponentWillMountWarnings.length &&
        (pendingUNSAFE_ComponentWillMountWarnings.forEach(function (fiber) {
          UNSAFE_componentWillMountUniqueNames.add(
            getComponentNameFromFiber(fiber) || "Component"
          );
          didWarnAboutUnsafeLifecycles.add(fiber.type);
        }),
        (pendingUNSAFE_ComponentWillMountWarnings = []));
      var componentWillReceivePropsUniqueNames = new Set();
      0 < pendingComponentWillReceivePropsWarnings.length &&
        (pendingComponentWillReceivePropsWarnings.forEach(function (fiber) {
          componentWillReceivePropsUniqueNames.add(
            getComponentNameFromFiber(fiber) || "Component"
          );
          didWarnAboutUnsafeLifecycles.add(fiber.type);
        }),
        (pendingComponentWillReceivePropsWarnings = []));
      var UNSAFE_componentWillReceivePropsUniqueNames = new Set();
      0 < pendingUNSAFE_ComponentWillReceivePropsWarnings.length &&
        (pendingUNSAFE_ComponentWillReceivePropsWarnings.forEach(
          function (fiber) {
            UNSAFE_componentWillReceivePropsUniqueNames.add(
              getComponentNameFromFiber(fiber) || "Component"
            );
            didWarnAboutUnsafeLifecycles.add(fiber.type);
          }
        ),
        (pendingUNSAFE_ComponentWillReceivePropsWarnings = []));
      var componentWillUpdateUniqueNames = new Set();
      0 < pendingComponentWillUpdateWarnings.length &&
        (pendingComponentWillUpdateWarnings.forEach(function (fiber) {
          componentWillUpdateUniqueNames.add(
            getComponentNameFromFiber(fiber) || "Component"
          );
          didWarnAboutUnsafeLifecycles.add(fiber.type);
        }),
        (pendingComponentWillUpdateWarnings = []));
      var UNSAFE_componentWillUpdateUniqueNames = new Set();
      0 < pendingUNSAFE_ComponentWillUpdateWarnings.length &&
        (pendingUNSAFE_ComponentWillUpdateWarnings.forEach(function (fiber) {
          UNSAFE_componentWillUpdateUniqueNames.add(
            getComponentNameFromFiber(fiber) || "Component"
          );
          didWarnAboutUnsafeLifecycles.add(fiber.type);
        }),
        (pendingUNSAFE_ComponentWillUpdateWarnings = []));
      if (0 < UNSAFE_componentWillMountUniqueNames.size) {
        var sortedNames = setToSortedString(
          UNSAFE_componentWillMountUniqueNames
        );
        console.error(
          "Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\n\nPlease update the following components: %s",
          sortedNames
        );
      }
      0 < UNSAFE_componentWillReceivePropsUniqueNames.size &&
        ((sortedNames = setToSortedString(
          UNSAFE_componentWillReceivePropsUniqueNames
        )),
        console.error(
          "Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state\n\nPlease update the following components: %s",
          sortedNames
        ));
      0 < UNSAFE_componentWillUpdateUniqueNames.size &&
        ((sortedNames = setToSortedString(
          UNSAFE_componentWillUpdateUniqueNames
        )),
        console.error(
          "Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n\nPlease update the following components: %s",
          sortedNames
        ));
      0 < componentWillMountUniqueNames.size &&
        ((sortedNames = setToSortedString(componentWillMountUniqueNames)),
        console.warn(
          "componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move code with side effects to componentDidMount, and set initial state in the constructor.\n* Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s",
          sortedNames
        ));
      0 < componentWillReceivePropsUniqueNames.size &&
        ((sortedNames = setToSortedString(
          componentWillReceivePropsUniqueNames
        )),
        console.warn(
          "componentWillReceiveProps has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state\n* Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s",
          sortedNames
        ));
      0 < componentWillUpdateUniqueNames.size &&
        ((sortedNames = setToSortedString(componentWillUpdateUniqueNames)),
        console.warn(
          "componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.\n\n* Move data fetching code or side effects to componentDidUpdate.\n* Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run `npx react-codemod rename-unsafe-lifecycles` in your project source folder.\n\nPlease update the following components: %s",
          sortedNames
        ));
    };
    var pendingLegacyContextWarning = new Map(),
      didWarnAboutLegacyContext = new Set();
    ReactStrictModeWarnings.recordLegacyContextWarning = function (
      fiber,
      instance
    ) {
      var strictRoot = null;
      for (var node = fiber; null !== node; )
        node.mode & StrictLegacyMode && (strictRoot = node),
          (node = node.return);
      null === strictRoot
        ? console.error(
            "Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue."
          )
        : !didWarnAboutLegacyContext.has(fiber.type) &&
          ((node = pendingLegacyContextWarning.get(strictRoot)),
          null != fiber.type.contextTypes ||
            null != fiber.type.childContextTypes ||
            (null !== instance &&
              "function" === typeof instance.getChildContext)) &&
          (void 0 === node &&
            ((node = []), pendingLegacyContextWarning.set(strictRoot, node)),
          node.push(fiber));
    };
    ReactStrictModeWarnings.flushLegacyContextWarning = function () {
      pendingLegacyContextWarning.forEach(function (fiberArray) {
        if (0 !== fiberArray.length) {
          var firstFiber = fiberArray[0],
            uniqueNames = new Set();
          fiberArray.forEach(function (fiber) {
            uniqueNames.add(getComponentNameFromFiber(fiber) || "Component");
            didWarnAboutLegacyContext.add(fiber.type);
          });
          var sortedNames = setToSortedString(uniqueNames);
          runWithFiberInDEV(firstFiber, function () {
            console.error(
              "Legacy context API has been detected within a strict-mode tree.\n\nThe old API will be supported in all 16.x releases, but applications using it should migrate to the new version.\n\nPlease update the following components: %s\n\nLearn more about this warning here: https://react.dev/link/legacy-context",
              sortedNames
            );
          });
        }
      });
    };
    ReactStrictModeWarnings.discardPendingWarnings = function () {
      pendingComponentWillMountWarnings = [];
      pendingUNSAFE_ComponentWillMountWarnings = [];
      pendingComponentWillReceivePropsWarnings = [];
      pendingUNSAFE_ComponentWillReceivePropsWarnings = [];
      pendingComponentWillUpdateWarnings = [];
      pendingUNSAFE_ComponentWillUpdateWarnings = [];
      pendingLegacyContextWarning = new Map();
    };
    var callComponent = {
        react_stack_bottom_frame: function (Component, props, secondArg) {
          var wasRendering = isRendering;
          isRendering = !0;
          try {
            return Component(props, secondArg);
          } finally {
            isRendering = wasRendering;
          }
        }
      },
      callComponentInDEV =
        callComponent.react_stack_bottom_frame.bind(callComponent),
      callRender = {
        react_stack_bottom_frame: function (instance) {
          var wasRendering = isRendering;
          isRendering = !0;
          try {
            return instance.render();
          } finally {
            isRendering = wasRendering;
          }
        }
      },
      callRenderInDEV = callRender.react_stack_bottom_frame.bind(callRender),
      callComponentDidMount = {
        react_stack_bottom_frame: function (finishedWork, instance) {
          try {
            instance.componentDidMount();
          } catch (error) {
            captureCommitPhaseError(finishedWork, finishedWork.return, error);
          }
        }
      },
      callComponentDidMountInDEV =
        callComponentDidMount.react_stack_bottom_frame.bind(
          callComponentDidMount
        ),
      callComponentDidUpdate = {
        react_stack_bottom_frame: function (
          finishedWork,
          instance,
          prevProps,
          prevState,
          snapshot
        ) {
          try {
            instance.componentDidUpdate(prevProps, prevState, snapshot);
          } catch (error) {
            captureCommitPhaseError(finishedWork, finishedWork.return, error);
          }
        }
      },
      callComponentDidUpdateInDEV =
        callComponentDidUpdate.react_stack_bottom_frame.bind(
          callComponentDidUpdate
        ),
      callComponentDidCatch = {
        react_stack_bottom_frame: function (instance, errorInfo) {
          var stack = errorInfo.stack;
          instance.componentDidCatch(errorInfo.value, {
            componentStack: null !== stack ? stack : ""
          });
        }
      },
      callComponentDidCatchInDEV =
        callComponentDidCatch.react_stack_bottom_frame.bind(
          callComponentDidCatch
        ),
      callComponentWillUnmount = {
        react_stack_bottom_frame: function (
          current,
          nearestMountedAncestor,
          instance
        ) {
          try {
            instance.componentWillUnmount();
          } catch (error) {
            captureCommitPhaseError(current, nearestMountedAncestor, error);
          }
        }
      },
      callComponentWillUnmountInDEV =
        callComponentWillUnmount.react_stack_bottom_frame.bind(
          callComponentWillUnmount
        ),
      callCreate = {
        react_stack_bottom_frame: function (effect) {
          var create = effect.create;
          effect = effect.inst;
          create = create();
          return (effect.destroy = create);
        }
      },
      callCreateInDEV = callCreate.react_stack_bottom_frame.bind(callCreate),
      callDestroy = {
        react_stack_bottom_frame: function (
          current,
          nearestMountedAncestor,
          destroy
        ) {
          try {
            destroy();
          } catch (error) {
            captureCommitPhaseError(current, nearestMountedAncestor, error);
          }
        }
      },
      callDestroyInDEV = callDestroy.react_stack_bottom_frame.bind(callDestroy),
      callLazyInit = {
        react_stack_bottom_frame: function (lazy) {
          var init = lazy._init;
          return init(lazy._payload);
        }
      },
      callLazyInitInDEV =
        callLazyInit.react_stack_bottom_frame.bind(callLazyInit),
      SuspenseException = Error(
        "Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`."
      ),
      SuspenseyCommitException = Error(
        "Suspense Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."
      ),
      SuspenseActionException = Error(
        "Suspense Exception: This is not a real error! It's an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary."
      ),
      noopSuspenseyCommitThenable = {
        then: function () {
          console.error(
            'Internal React error: A listener was unexpectedly attached to a "noop" thenable. This is a bug in React. Please file an issue.'
          );
        }
      },
      suspendedThenable = null,
      needsToResetSuspendedThenableDEV = !1,
      thenableState$1 = null,
      thenableIndexCounter$1 = 0,
      currentDebugInfo = null,
      didWarnAboutMaps;
    var didWarnAboutGenerators = (didWarnAboutMaps = !1);
    var ownerHasKeyUseWarning = {};
    var ownerHasFunctionTypeWarning = {};
    var ownerHasSymbolTypeWarning = {};
    warnForMissingKey = function (returnFiber, workInProgress, child) {
      if (
        null !== child &&
        "object" === typeof child &&
        child._store &&
        ((!child._store.validated && null == child.key) ||
          2 === child._store.validated)
      ) {
        if ("object" !== typeof child._store)
          throw Error(
            "React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue."
          );
        child._store.validated = 1;
        var componentName = getComponentNameFromFiber(returnFiber),
          componentKey = componentName || "null";
        if (!ownerHasKeyUseWarning[componentKey]) {
          ownerHasKeyUseWarning[componentKey] = !0;
          child = child._owner;
          returnFiber = returnFiber._debugOwner;
          var currentComponentErrorInfo = "";
          returnFiber &&
            "number" === typeof returnFiber.tag &&
            (componentKey = getComponentNameFromFiber(returnFiber)) &&
            (currentComponentErrorInfo =
              "\n\nCheck the render method of `" + componentKey + "`.");
          currentComponentErrorInfo ||
            (componentName &&
              (currentComponentErrorInfo =
                "\n\nCheck the top-level render call using <" +
                componentName +
                ">."));
          var childOwnerAppendix = "";
          null != child &&
            returnFiber !== child &&
            ((componentName = null),
            "number" === typeof child.tag
              ? (componentName = getComponentNameFromFiber(child))
              : "string" === typeof child.name && (componentName = child.name),
            componentName &&
              (childOwnerAppendix =
                " It was passed a child from " + componentName + "."));
          runWithFiberInDEV(workInProgress, function () {
            console.error(
              'Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.',
              currentComponentErrorInfo,
              childOwnerAppendix
            );
          });
        }
      }
    };
    var reconcileChildFibers = createChildReconciler(!0),
      mountChildFibers = createChildReconciler(!1),
      UpdateState = 0,
      ReplaceState = 1,
      ForceUpdate = 2,
      CaptureUpdate = 3,
      hasForceUpdate = !1;
    var didWarnUpdateInsideUpdate = !1;
    var currentlyProcessingQueue = null;
    var didReadFromEntangledAsyncAction = !1,
      currentTreeHiddenStackCursor = createCursor(null),
      prevEntangledRenderLanesCursor = createCursor(0),
      suspenseHandlerStackCursor = createCursor(null),
      shellBoundary = null,
      SubtreeSuspenseContextMask = 1,
      ForceSuspenseFallback = 2,
      suspenseStackCursor = createCursor(0),
      NoFlags = 0,
      HasEffect = 1,
      Insertion = 2,
      Layout = 4,
      Passive = 8,
      didWarnUncachedGetSnapshot;
    var didWarnAboutMismatchedHooksForComponent = new Set();
    var didWarnAboutUseWrappedInTryCatch = new Set();
    var didWarnAboutAsyncClientComponent = new Set();
    var didWarnAboutUseFormState = new Set();
    var renderLanes = 0,
      currentlyRenderingFiber = null,
      currentHook = null,
      workInProgressHook = null,
      didScheduleRenderPhaseUpdate = !1,
      didScheduleRenderPhaseUpdateDuringThisPass = !1,
      shouldDoubleInvokeUserFnsInHooksDEV = !1,
      localIdCounter = 0,
      thenableIndexCounter = 0,
      thenableState = null,
      globalClientIdCounter = 0,
      RE_RENDER_LIMIT = 25,
      currentHookNameInDev = null,
      hookTypesDev = null,
      hookTypesUpdateIndexDev = -1,
      ignorePreviousDependencies = !1,
      ContextOnlyDispatcher = {
        readContext: readContext,
        use: use,
        useCallback: throwInvalidHookError,
        useContext: throwInvalidHookError,
        useEffect: throwInvalidHookError,
        useImperativeHandle: throwInvalidHookError,
        useLayoutEffect: throwInvalidHookError,
        useInsertionEffect: throwInvalidHookError,
        useMemo: throwInvalidHookError,
        useReducer: throwInvalidHookError,
        useRef: throwInvalidHookError,
        useState: throwInvalidHookError,
        useDebugValue: throwInvalidHookError,
        useDeferredValue: throwInvalidHookError,
        useTransition: throwInvalidHookError,
        useSyncExternalStore: throwInvalidHookError,
        useId: throwInvalidHookError,
        useHostTransitionStatus: throwInvalidHookError,
        useFormState: throwInvalidHookError,
        useActionState: throwInvalidHookError,
        useOptimistic: throwInvalidHookError,
        useMemoCache: throwInvalidHookError,
        useCacheRefresh: throwInvalidHookError
      };
    ContextOnlyDispatcher.useEffectEvent = throwInvalidHookError;
    var HooksDispatcherOnMountInDEV = null,
      HooksDispatcherOnMountWithHookTypesInDEV = null,
      HooksDispatcherOnUpdateInDEV = null,
      HooksDispatcherOnRerenderInDEV = null,
      InvalidNestedHooksDispatcherOnMountInDEV = null,
      InvalidNestedHooksDispatcherOnUpdateInDEV = null,
      InvalidNestedHooksDispatcherOnRerenderInDEV = null;
    HooksDispatcherOnMountInDEV = {
      readContext: function (context) {
        return readContext(context);
      },
      use: use,
      useCallback: function (callback, deps) {
        currentHookNameInDev = "useCallback";
        mountHookTypesDev();
        checkDepsAreArrayDev(deps);
        return mountCallback(callback, deps);
      },
      useContext: function (context) {
        currentHookNameInDev = "useContext";
        mountHookTypesDev();
        return readContext(context);
      },
      useEffect: function (create, deps) {
        currentHookNameInDev = "useEffect";
        mountHookTypesDev();
        checkDepsAreArrayDev(deps);
        return mountEffect(create, deps);
      },
      useImperativeHandle: function (ref, create, deps) {
        currentHookNameInDev = "useImperativeHandle";
        mountHookTypesDev();
        checkDepsAreArrayDev(deps);
        return mountImperativeHandle(ref, create, deps);
      },
      useInsertionEffect: function (create, deps) {
        currentHookNameInDev = "useInsertionEffect";
        mountHookTypesDev();
        checkDepsAreArrayDev(deps);
        mountEffectImpl(4, Insertion, create, deps);
      },
      useLayoutEffect: function (create, deps) {
        currentHookNameInDev = "useLayoutEffect";
        mountHookTypesDev();
        checkDepsAreArrayDev(deps);
        return mountLayoutEffect(create, deps);
      },
      useMemo: function (create, deps) {
        currentHookNameInDev = "useMemo";
        mountHookTypesDev();
        checkDepsAreArrayDev(deps);
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountMemo(create, deps);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useReducer: function (reducer, initialArg, init) {
        currentHookNameInDev = "useReducer";
        mountHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountReducer(reducer, initialArg, init);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useRef: function (initialValue) {
        currentHookNameInDev = "useRef";
        mountHookTypesDev();
        return mountRef(initialValue);
      },
      useState: function (initialState) {
        currentHookNameInDev = "useState";
        mountHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountState(initialState);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useDebugValue: function () {
        currentHookNameInDev = "useDebugValue";
        mountHookTypesDev();
      },
      useDeferredValue: function (value, initialValue) {
        currentHookNameInDev = "useDeferredValue";
        mountHookTypesDev();
        return mountDeferredValue(value, initialValue);
      },
      useTransition: function () {
        currentHookNameInDev = "useTransition";
        mountHookTypesDev();
        return mountTransition();
      },
      useSyncExternalStore: function (
        subscribe,
        getSnapshot,
        getServerSnapshot
      ) {
        currentHookNameInDev = "useSyncExternalStore";
        mountHookTypesDev();
        return mountSyncExternalStore(
          subscribe,
          getSnapshot,
          getServerSnapshot
        );
      },
      useId: function () {
        currentHookNameInDev = "useId";
        mountHookTypesDev();
        return mountId();
      },
      useFormState: function (action, initialState) {
        currentHookNameInDev = "useFormState";
        mountHookTypesDev();
        warnOnUseFormStateInDev();
        return mountActionState(action, initialState);
      },
      useActionState: function (action, initialState) {
        currentHookNameInDev = "useActionState";
        mountHookTypesDev();
        return mountActionState(action, initialState);
      },
      useOptimistic: function (passthrough) {
        currentHookNameInDev = "useOptimistic";
        mountHookTypesDev();
        return mountOptimistic(passthrough);
      },
      useHostTransitionStatus: useHostTransitionStatus,
      useMemoCache: useMemoCache,
      useCacheRefresh: function () {
        currentHookNameInDev = "useCacheRefresh";
        mountHookTypesDev();
        return mountRefresh();
      },
      useEffectEvent: function (callback) {
        currentHookNameInDev = "useEffectEvent";
        mountHookTypesDev();
        return mountEvent(callback);
      }
    };
    HooksDispatcherOnMountWithHookTypesInDEV = {
      readContext: function (context) {
        return readContext(context);
      },
      use: use,
      useCallback: function (callback, deps) {
        currentHookNameInDev = "useCallback";
        updateHookTypesDev();
        return mountCallback(callback, deps);
      },
      useContext: function (context) {
        currentHookNameInDev = "useContext";
        updateHookTypesDev();
        return readContext(context);
      },
      useEffect: function (create, deps) {
        currentHookNameInDev = "useEffect";
        updateHookTypesDev();
        return mountEffect(create, deps);
      },
      useImperativeHandle: function (ref, create, deps) {
        currentHookNameInDev = "useImperativeHandle";
        updateHookTypesDev();
        return mountImperativeHandle(ref, create, deps);
      },
      useInsertionEffect: function (create, deps) {
        currentHookNameInDev = "useInsertionEffect";
        updateHookTypesDev();
        mountEffectImpl(4, Insertion, create, deps);
      },
      useLayoutEffect: function (create, deps) {
        currentHookNameInDev = "useLayoutEffect";
        updateHookTypesDev();
        return mountLayoutEffect(create, deps);
      },
      useMemo: function (create, deps) {
        currentHookNameInDev = "useMemo";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountMemo(create, deps);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useReducer: function (reducer, initialArg, init) {
        currentHookNameInDev = "useReducer";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountReducer(reducer, initialArg, init);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useRef: function (initialValue) {
        currentHookNameInDev = "useRef";
        updateHookTypesDev();
        return mountRef(initialValue);
      },
      useState: function (initialState) {
        currentHookNameInDev = "useState";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountState(initialState);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useDebugValue: function () {
        currentHookNameInDev = "useDebugValue";
        updateHookTypesDev();
      },
      useDeferredValue: function (value, initialValue) {
        currentHookNameInDev = "useDeferredValue";
        updateHookTypesDev();
        return mountDeferredValue(value, initialValue);
      },
      useTransition: function () {
        currentHookNameInDev = "useTransition";
        updateHookTypesDev();
        return mountTransition();
      },
      useSyncExternalStore: function (
        subscribe,
        getSnapshot,
        getServerSnapshot
      ) {
        currentHookNameInDev = "useSyncExternalStore";
        updateHookTypesDev();
        return mountSyncExternalStore(
          subscribe,
          getSnapshot,
          getServerSnapshot
        );
      },
      useId: function () {
        currentHookNameInDev = "useId";
        updateHookTypesDev();
        return mountId();
      },
      useActionState: function (action, initialState) {
        currentHookNameInDev = "useActionState";
        updateHookTypesDev();
        return mountActionState(action, initialState);
      },
      useFormState: function (action, initialState) {
        currentHookNameInDev = "useFormState";
        updateHookTypesDev();
        warnOnUseFormStateInDev();
        return mountActionState(action, initialState);
      },
      useOptimistic: function (passthrough) {
        currentHookNameInDev = "useOptimistic";
        updateHookTypesDev();
        return mountOptimistic(passthrough);
      },
      useHostTransitionStatus: useHostTransitionStatus,
      useMemoCache: useMemoCache,
      useCacheRefresh: function () {
        currentHookNameInDev = "useCacheRefresh";
        updateHookTypesDev();
        return mountRefresh();
      },
      useEffectEvent: function (callback) {
        currentHookNameInDev = "useEffectEvent";
        updateHookTypesDev();
        return mountEvent(callback);
      }
    };
    HooksDispatcherOnUpdateInDEV = {
      readContext: function (context) {
        return readContext(context);
      },
      use: use,
      useCallback: function (callback, deps) {
        currentHookNameInDev = "useCallback";
        updateHookTypesDev();
        return updateCallback(callback, deps);
      },
      useContext: function (context) {
        currentHookNameInDev = "useContext";
        updateHookTypesDev();
        return readContext(context);
      },
      useEffect: function (create, deps) {
        currentHookNameInDev = "useEffect";
        updateHookTypesDev();
        updateEffectImpl(2048, Passive, create, deps);
      },
      useImperativeHandle: function (ref, create, deps) {
        currentHookNameInDev = "useImperativeHandle";
        updateHookTypesDev();
        return updateImperativeHandle(ref, create, deps);
      },
      useInsertionEffect: function (create, deps) {
        currentHookNameInDev = "useInsertionEffect";
        updateHookTypesDev();
        return updateEffectImpl(4, Insertion, create, deps);
      },
      useLayoutEffect: function (create, deps) {
        currentHookNameInDev = "useLayoutEffect";
        updateHookTypesDev();
        return updateEffectImpl(4, Layout, create, deps);
      },
      useMemo: function (create, deps) {
        currentHookNameInDev = "useMemo";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return updateMemo(create, deps);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useReducer: function (reducer, initialArg, init) {
        currentHookNameInDev = "useReducer";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return updateReducer(reducer, initialArg, init);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useRef: function () {
        currentHookNameInDev = "useRef";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useState: function () {
        currentHookNameInDev = "useState";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return updateReducer(basicStateReducer);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useDebugValue: function () {
        currentHookNameInDev = "useDebugValue";
        updateHookTypesDev();
      },
      useDeferredValue: function (value, initialValue) {
        currentHookNameInDev = "useDeferredValue";
        updateHookTypesDev();
        return updateDeferredValue(value, initialValue);
      },
      useTransition: function () {
        currentHookNameInDev = "useTransition";
        updateHookTypesDev();
        return updateTransition();
      },
      useSyncExternalStore: function (
        subscribe,
        getSnapshot,
        getServerSnapshot
      ) {
        currentHookNameInDev = "useSyncExternalStore";
        updateHookTypesDev();
        return updateSyncExternalStore(
          subscribe,
          getSnapshot,
          getServerSnapshot
        );
      },
      useId: function () {
        currentHookNameInDev = "useId";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useFormState: function (action) {
        currentHookNameInDev = "useFormState";
        updateHookTypesDev();
        warnOnUseFormStateInDev();
        return updateActionState(action);
      },
      useActionState: function (action) {
        currentHookNameInDev = "useActionState";
        updateHookTypesDev();
        return updateActionState(action);
      },
      useOptimistic: function (passthrough, reducer) {
        currentHookNameInDev = "useOptimistic";
        updateHookTypesDev();
        return updateOptimistic(passthrough, reducer);
      },
      useHostTransitionStatus: useHostTransitionStatus,
      useMemoCache: useMemoCache,
      useCacheRefresh: function () {
        currentHookNameInDev = "useCacheRefresh";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useEffectEvent: function (callback) {
        currentHookNameInDev = "useEffectEvent";
        updateHookTypesDev();
        return updateEvent(callback);
      }
    };
    HooksDispatcherOnRerenderInDEV = {
      readContext: function (context) {
        return readContext(context);
      },
      use: use,
      useCallback: function (callback, deps) {
        currentHookNameInDev = "useCallback";
        updateHookTypesDev();
        return updateCallback(callback, deps);
      },
      useContext: function (context) {
        currentHookNameInDev = "useContext";
        updateHookTypesDev();
        return readContext(context);
      },
      useEffect: function (create, deps) {
        currentHookNameInDev = "useEffect";
        updateHookTypesDev();
        updateEffectImpl(2048, Passive, create, deps);
      },
      useImperativeHandle: function (ref, create, deps) {
        currentHookNameInDev = "useImperativeHandle";
        updateHookTypesDev();
        return updateImperativeHandle(ref, create, deps);
      },
      useInsertionEffect: function (create, deps) {
        currentHookNameInDev = "useInsertionEffect";
        updateHookTypesDev();
        return updateEffectImpl(4, Insertion, create, deps);
      },
      useLayoutEffect: function (create, deps) {
        currentHookNameInDev = "useLayoutEffect";
        updateHookTypesDev();
        return updateEffectImpl(4, Layout, create, deps);
      },
      useMemo: function (create, deps) {
        currentHookNameInDev = "useMemo";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnRerenderInDEV;
        try {
          return updateMemo(create, deps);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useReducer: function (reducer, initialArg, init) {
        currentHookNameInDev = "useReducer";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnRerenderInDEV;
        try {
          return rerenderReducer(reducer, initialArg, init);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useRef: function () {
        currentHookNameInDev = "useRef";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useState: function () {
        currentHookNameInDev = "useState";
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnRerenderInDEV;
        try {
          return rerenderReducer(basicStateReducer);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useDebugValue: function () {
        currentHookNameInDev = "useDebugValue";
        updateHookTypesDev();
      },
      useDeferredValue: function (value, initialValue) {
        currentHookNameInDev = "useDeferredValue";
        updateHookTypesDev();
        return rerenderDeferredValue(value, initialValue);
      },
      useTransition: function () {
        currentHookNameInDev = "useTransition";
        updateHookTypesDev();
        return rerenderTransition();
      },
      useSyncExternalStore: function (
        subscribe,
        getSnapshot,
        getServerSnapshot
      ) {
        currentHookNameInDev = "useSyncExternalStore";
        updateHookTypesDev();
        return updateSyncExternalStore(
          subscribe,
          getSnapshot,
          getServerSnapshot
        );
      },
      useId: function () {
        currentHookNameInDev = "useId";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useFormState: function (action) {
        currentHookNameInDev = "useFormState";
        updateHookTypesDev();
        warnOnUseFormStateInDev();
        return rerenderActionState(action);
      },
      useActionState: function (action) {
        currentHookNameInDev = "useActionState";
        updateHookTypesDev();
        return rerenderActionState(action);
      },
      useOptimistic: function (passthrough, reducer) {
        currentHookNameInDev = "useOptimistic";
        updateHookTypesDev();
        return rerenderOptimistic(passthrough, reducer);
      },
      useHostTransitionStatus: useHostTransitionStatus,
      useMemoCache: useMemoCache,
      useCacheRefresh: function () {
        currentHookNameInDev = "useCacheRefresh";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useEffectEvent: function (callback) {
        currentHookNameInDev = "useEffectEvent";
        updateHookTypesDev();
        return updateEvent(callback);
      }
    };
    InvalidNestedHooksDispatcherOnMountInDEV = {
      readContext: function (context) {
        warnInvalidContextAccess();
        return readContext(context);
      },
      use: function (usable) {
        warnInvalidHookAccess();
        return use(usable);
      },
      useCallback: function (callback, deps) {
        currentHookNameInDev = "useCallback";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountCallback(callback, deps);
      },
      useContext: function (context) {
        currentHookNameInDev = "useContext";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return readContext(context);
      },
      useEffect: function (create, deps) {
        currentHookNameInDev = "useEffect";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountEffect(create, deps);
      },
      useImperativeHandle: function (ref, create, deps) {
        currentHookNameInDev = "useImperativeHandle";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountImperativeHandle(ref, create, deps);
      },
      useInsertionEffect: function (create, deps) {
        currentHookNameInDev = "useInsertionEffect";
        warnInvalidHookAccess();
        mountHookTypesDev();
        mountEffectImpl(4, Insertion, create, deps);
      },
      useLayoutEffect: function (create, deps) {
        currentHookNameInDev = "useLayoutEffect";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountLayoutEffect(create, deps);
      },
      useMemo: function (create, deps) {
        currentHookNameInDev = "useMemo";
        warnInvalidHookAccess();
        mountHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountMemo(create, deps);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useReducer: function (reducer, initialArg, init) {
        currentHookNameInDev = "useReducer";
        warnInvalidHookAccess();
        mountHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountReducer(reducer, initialArg, init);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useRef: function (initialValue) {
        currentHookNameInDev = "useRef";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountRef(initialValue);
      },
      useState: function (initialState) {
        currentHookNameInDev = "useState";
        warnInvalidHookAccess();
        mountHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnMountInDEV;
        try {
          return mountState(initialState);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useDebugValue: function () {
        currentHookNameInDev = "useDebugValue";
        warnInvalidHookAccess();
        mountHookTypesDev();
      },
      useDeferredValue: function (value, initialValue) {
        currentHookNameInDev = "useDeferredValue";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountDeferredValue(value, initialValue);
      },
      useTransition: function () {
        currentHookNameInDev = "useTransition";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountTransition();
      },
      useSyncExternalStore: function (
        subscribe,
        getSnapshot,
        getServerSnapshot
      ) {
        currentHookNameInDev = "useSyncExternalStore";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountSyncExternalStore(
          subscribe,
          getSnapshot,
          getServerSnapshot
        );
      },
      useId: function () {
        currentHookNameInDev = "useId";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountId();
      },
      useFormState: function (action, initialState) {
        currentHookNameInDev = "useFormState";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountActionState(action, initialState);
      },
      useActionState: function (action, initialState) {
        currentHookNameInDev = "useActionState";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountActionState(action, initialState);
      },
      useOptimistic: function (passthrough) {
        currentHookNameInDev = "useOptimistic";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountOptimistic(passthrough);
      },
      useMemoCache: function (size) {
        warnInvalidHookAccess();
        return useMemoCache(size);
      },
      useHostTransitionStatus: useHostTransitionStatus,
      useCacheRefresh: function () {
        currentHookNameInDev = "useCacheRefresh";
        mountHookTypesDev();
        return mountRefresh();
      },
      useEffectEvent: function (callback) {
        currentHookNameInDev = "useEffectEvent";
        warnInvalidHookAccess();
        mountHookTypesDev();
        return mountEvent(callback);
      }
    };
    InvalidNestedHooksDispatcherOnUpdateInDEV = {
      readContext: function (context) {
        warnInvalidContextAccess();
        return readContext(context);
      },
      use: function (usable) {
        warnInvalidHookAccess();
        return use(usable);
      },
      useCallback: function (callback, deps) {
        currentHookNameInDev = "useCallback";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateCallback(callback, deps);
      },
      useContext: function (context) {
        currentHookNameInDev = "useContext";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return readContext(context);
      },
      useEffect: function (create, deps) {
        currentHookNameInDev = "useEffect";
        warnInvalidHookAccess();
        updateHookTypesDev();
        updateEffectImpl(2048, Passive, create, deps);
      },
      useImperativeHandle: function (ref, create, deps) {
        currentHookNameInDev = "useImperativeHandle";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateImperativeHandle(ref, create, deps);
      },
      useInsertionEffect: function (create, deps) {
        currentHookNameInDev = "useInsertionEffect";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateEffectImpl(4, Insertion, create, deps);
      },
      useLayoutEffect: function (create, deps) {
        currentHookNameInDev = "useLayoutEffect";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateEffectImpl(4, Layout, create, deps);
      },
      useMemo: function (create, deps) {
        currentHookNameInDev = "useMemo";
        warnInvalidHookAccess();
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return updateMemo(create, deps);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useReducer: function (reducer, initialArg, init) {
        currentHookNameInDev = "useReducer";
        warnInvalidHookAccess();
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return updateReducer(reducer, initialArg, init);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useRef: function () {
        currentHookNameInDev = "useRef";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useState: function () {
        currentHookNameInDev = "useState";
        warnInvalidHookAccess();
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return updateReducer(basicStateReducer);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useDebugValue: function () {
        currentHookNameInDev = "useDebugValue";
        warnInvalidHookAccess();
        updateHookTypesDev();
      },
      useDeferredValue: function (value, initialValue) {
        currentHookNameInDev = "useDeferredValue";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateDeferredValue(value, initialValue);
      },
      useTransition: function () {
        currentHookNameInDev = "useTransition";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateTransition();
      },
      useSyncExternalStore: function (
        subscribe,
        getSnapshot,
        getServerSnapshot
      ) {
        currentHookNameInDev = "useSyncExternalStore";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateSyncExternalStore(
          subscribe,
          getSnapshot,
          getServerSnapshot
        );
      },
      useId: function () {
        currentHookNameInDev = "useId";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useFormState: function (action) {
        currentHookNameInDev = "useFormState";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateActionState(action);
      },
      useActionState: function (action) {
        currentHookNameInDev = "useActionState";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateActionState(action);
      },
      useOptimistic: function (passthrough, reducer) {
        currentHookNameInDev = "useOptimistic";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateOptimistic(passthrough, reducer);
      },
      useMemoCache: function (size) {
        warnInvalidHookAccess();
        return useMemoCache(size);
      },
      useHostTransitionStatus: useHostTransitionStatus,
      useCacheRefresh: function () {
        currentHookNameInDev = "useCacheRefresh";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useEffectEvent: function (callback) {
        currentHookNameInDev = "useEffectEvent";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateEvent(callback);
      }
    };
    InvalidNestedHooksDispatcherOnRerenderInDEV = {
      readContext: function (context) {
        warnInvalidContextAccess();
        return readContext(context);
      },
      use: function (usable) {
        warnInvalidHookAccess();
        return use(usable);
      },
      useCallback: function (callback, deps) {
        currentHookNameInDev = "useCallback";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateCallback(callback, deps);
      },
      useContext: function (context) {
        currentHookNameInDev = "useContext";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return readContext(context);
      },
      useEffect: function (create, deps) {
        currentHookNameInDev = "useEffect";
        warnInvalidHookAccess();
        updateHookTypesDev();
        updateEffectImpl(2048, Passive, create, deps);
      },
      useImperativeHandle: function (ref, create, deps) {
        currentHookNameInDev = "useImperativeHandle";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateImperativeHandle(ref, create, deps);
      },
      useInsertionEffect: function (create, deps) {
        currentHookNameInDev = "useInsertionEffect";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateEffectImpl(4, Insertion, create, deps);
      },
      useLayoutEffect: function (create, deps) {
        currentHookNameInDev = "useLayoutEffect";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateEffectImpl(4, Layout, create, deps);
      },
      useMemo: function (create, deps) {
        currentHookNameInDev = "useMemo";
        warnInvalidHookAccess();
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return updateMemo(create, deps);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useReducer: function (reducer, initialArg, init) {
        currentHookNameInDev = "useReducer";
        warnInvalidHookAccess();
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return rerenderReducer(reducer, initialArg, init);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useRef: function () {
        currentHookNameInDev = "useRef";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useState: function () {
        currentHookNameInDev = "useState";
        warnInvalidHookAccess();
        updateHookTypesDev();
        var prevDispatcher = ReactSharedInternals.H;
        ReactSharedInternals.H = InvalidNestedHooksDispatcherOnUpdateInDEV;
        try {
          return rerenderReducer(basicStateReducer);
        } finally {
          ReactSharedInternals.H = prevDispatcher;
        }
      },
      useDebugValue: function () {
        currentHookNameInDev = "useDebugValue";
        warnInvalidHookAccess();
        updateHookTypesDev();
      },
      useDeferredValue: function (value, initialValue) {
        currentHookNameInDev = "useDeferredValue";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return rerenderDeferredValue(value, initialValue);
      },
      useTransition: function () {
        currentHookNameInDev = "useTransition";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return rerenderTransition();
      },
      useSyncExternalStore: function (
        subscribe,
        getSnapshot,
        getServerSnapshot
      ) {
        currentHookNameInDev = "useSyncExternalStore";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateSyncExternalStore(
          subscribe,
          getSnapshot,
          getServerSnapshot
        );
      },
      useId: function () {
        currentHookNameInDev = "useId";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useFormState: function (action) {
        currentHookNameInDev = "useFormState";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return rerenderActionState(action);
      },
      useActionState: function (action) {
        currentHookNameInDev = "useActionState";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return rerenderActionState(action);
      },
      useOptimistic: function (passthrough, reducer) {
        currentHookNameInDev = "useOptimistic";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return rerenderOptimistic(passthrough, reducer);
      },
      useMemoCache: function (size) {
        warnInvalidHookAccess();
        return useMemoCache(size);
      },
      useHostTransitionStatus: useHostTransitionStatus,
      useCacheRefresh: function () {
        currentHookNameInDev = "useCacheRefresh";
        updateHookTypesDev();
        return updateWorkInProgressHook().memoizedState;
      },
      useEffectEvent: function (callback) {
        currentHookNameInDev = "useEffectEvent";
        warnInvalidHookAccess();
        updateHookTypesDev();
        return updateEvent(callback);
      }
    };
    var fakeInternalInstance = {};
    var didWarnAboutStateAssignmentForComponent = new Set();
    var didWarnAboutUninitializedState = new Set();
    var didWarnAboutGetSnapshotBeforeUpdateWithoutDidUpdate = new Set();
    var didWarnAboutLegacyLifecyclesAndDerivedState = new Set();
    var didWarnAboutDirectlyAssigningPropsToState = new Set();
    var didWarnAboutUndefinedDerivedState = new Set();
    var didWarnAboutContextTypes$1 = new Set();
    var didWarnAboutChildContextTypes = new Set();
    var didWarnAboutInvalidateContextType = new Set();
    var didWarnOnInvalidCallback = new Set();
    Object.freeze(fakeInternalInstance);
    var classComponentUpdater = {
        enqueueSetState: function (inst, payload, callback) {
          inst = inst._reactInternals;
          var lane = requestUpdateLane(inst),
            update = createUpdate(lane);
          update.payload = payload;
          void 0 !== callback &&
            null !== callback &&
            (warnOnInvalidCallback(callback), (update.callback = callback));
          payload = enqueueUpdate(inst, update, lane);
          null !== payload &&
            (startUpdateTimerByLane(lane, "this.setState()", inst),
            scheduleUpdateOnFiber(payload, inst, lane),
            entangleTransitions(payload, inst, lane));
        },
        enqueueReplaceState: function (inst, payload, callback) {
          inst = inst._reactInternals;
          var lane = requestUpdateLane(inst),
            update = createUpdate(lane);
          update.tag = ReplaceState;
          update.payload = payload;
          void 0 !== callback &&
            null !== callback &&
            (warnOnInvalidCallback(callback), (update.callback = callback));
          payload = enqueueUpdate(inst, update, lane);
          null !== payload &&
            (startUpdateTimerByLane(lane, "this.replaceState()", inst),
            scheduleUpdateOnFiber(payload, inst, lane),
            entangleTransitions(payload, inst, lane));
        },
        enqueueForceUpdate: function (inst, callback) {
          inst = inst._reactInternals;
          var lane = requestUpdateLane(inst),
            update = createUpdate(lane);
          update.tag = ForceUpdate;
          void 0 !== callback &&
            null !== callback &&
            (warnOnInvalidCallback(callback), (update.callback = callback));
          callback = enqueueUpdate(inst, update, lane);
          null !== callback &&
            (startUpdateTimerByLane(lane, "this.forceUpdate()", inst),
            scheduleUpdateOnFiber(callback, inst, lane),
            entangleTransitions(callback, inst, lane));
        }
      },
      componentName = null,
      errorBoundaryName = null,
      SelectiveHydrationException = Error(
        "This is not a real error. It's an implementation detail of React's selective hydration feature. If this leaks into userspace, it's a bug in React. Please file an issue."
      ),
      didReceiveUpdate = !1;
    var didWarnAboutBadClass = {};
    var didWarnAboutContextTypeOnFunctionComponent = {};
    var didWarnAboutContextTypes = {};
    var didWarnAboutGetDerivedStateOnFunctionComponent = {};
    var didWarnAboutReassigningProps = !1;
    var didWarnAboutRevealOrder = {};
    var didWarnAboutTailOptions = {};
    var SUSPENDED_MARKER = {
        dehydrated: null,
        treeContext: null,
        retryLane: 0,
        hydrationErrors: null
      },
      hasWarnedAboutUsingNoValuePropOnContextProvider = !1,
      didWarnAboutUndefinedSnapshotBeforeUpdate = null;
    didWarnAboutUndefinedSnapshotBeforeUpdate = new Set();
    var offscreenSubtreeIsHidden = !1,
      offscreenSubtreeWasHidden = !1,
      needsFormReset = !1,
      PossiblyWeakSet = "function" === typeof WeakSet ? WeakSet : Set,
      nextEffect = null,
      inProgressLanes = null,
      inProgressRoot = null,
      hostParent = null,
      hostParentIsContainer = !1,
      currentHoistableRoot = null,
      inHydratedSubtree = !1,
      suspenseyCommitFlag = 8192,
      DefaultAsyncDispatcher = {
        getCacheForType: function (resourceType) {
          var cache = readContext(CacheContext),
            cacheForType = cache.data.get(resourceType);
          void 0 === cacheForType &&
            ((cacheForType = resourceType()),
            cache.data.set(resourceType, cacheForType));
          return cacheForType;
        },
        cacheSignal: function () {
          return readContext(CacheContext).controller.signal;
        },
        getOwner: function () {
          return current;
        }
      };
    if ("function" === typeof Symbol && Symbol.for) {
      var symbolFor = Symbol.for;
      symbolFor("selector.component");
      symbolFor("selector.has_pseudo_class");
      symbolFor("selector.role");
      symbolFor("selector.test_id");
      symbolFor("selector.text");
    }
    var commitHooks = [],
      PossiblyWeakMap = "function" === typeof WeakMap ? WeakMap : Map,
      NoContext = 0,
      RenderContext = 2,
      CommitContext = 4,
      RootInProgress = 0,
      RootFatalErrored = 1,
      RootErrored = 2,
      RootSuspended = 3,
      RootSuspendedWithDelay = 4,
      RootSuspendedAtTheShell = 6,
      RootCompleted = 5,
      executionContext = NoContext,
      workInProgressRoot = null,
      workInProgress = null,
      workInProgressRootRenderLanes = 0,
      NotSuspended = 0,
      SuspendedOnError = 1,
      SuspendedOnData = 2,
      SuspendedOnImmediate = 3,
      SuspendedOnInstance = 4,
      SuspendedOnInstanceAndReadyToContinue = 5,
      SuspendedOnDeprecatedThrowPromise = 6,
      SuspendedAndReadyToContinue = 7,
      SuspendedOnHydration = 8,
      SuspendedOnAction = 9,
      workInProgressSuspendedReason = NotSuspended,
      workInProgressThrownValue = null,
      workInProgressRootDidSkipSuspendedSiblings = !1,
      workInProgressRootIsPrerendering = !1,
      workInProgressRootDidAttachPingListener = !1,
      entangledRenderLanes = 0,
      workInProgressRootExitStatus = RootInProgress,
      workInProgressRootSkippedLanes = 0,
      workInProgressRootInterleavedUpdatedLanes = 0,
      workInProgressRootPingedLanes = 0,
      workInProgressDeferredLane = 0,
      workInProgressSuspendedRetryLanes = 0,
      workInProgressRootConcurrentErrors = null,
      workInProgressRootRecoverableErrors = null,
      workInProgressRootDidIncludeRecursiveRenderUpdate = !1,
      globalMostRecentFallbackTime = 0,
      globalMostRecentTransitionTime = 0,
      FALLBACK_THROTTLE_MS = 300,
      workInProgressRootRenderTargetTime = Infinity,
      RENDER_TIMEOUT_MS = 500,
      workInProgressTransitions = null,
      workInProgressUpdateTask = null,
      legacyErrorBoundariesThatAlreadyFailed = null,
      IMMEDIATE_COMMIT = 0,
      ABORTED_VIEW_TRANSITION_COMMIT = 1,
      DELAYED_PASSIVE_COMMIT = 2,
      ANIMATION_STARTED_COMMIT = 3,
      NO_PENDING_EFFECTS = 0,
      PENDING_MUTATION_PHASE = 1,
      PENDING_LAYOUT_PHASE = 2,
      PENDING_AFTER_MUTATION_PHASE = 3,
      PENDING_SPAWNED_WORK = 4,
      PENDING_PASSIVE_PHASE = 5,
      pendingEffectsStatus = 0,
      pendingEffectsRoot = null,
      pendingFinishedWork = null,
      pendingEffectsLanes = 0,
      pendingEffectsRemainingLanes = 0,
      pendingEffectsRenderEndTime = -0,
      pendingPassiveTransitions = null,
      pendingRecoverableErrors = null,
      pendingSuspendedCommitReason = null,
      pendingDelayedCommitReason = IMMEDIATE_COMMIT,
      pendingSuspendedViewTransitionReason = null,
      NESTED_UPDATE_LIMIT = 50,
      nestedUpdateCount = 0,
      rootWithNestedUpdates = null,
      isFlushingPassiveEffects = !1,
      didScheduleUpdateDuringPassiveEffects = !1,
      NESTED_PASSIVE_UPDATE_LIMIT = 50,
      nestedPassiveUpdateCount = 0,
      rootWithPassiveNestedUpdates = null,
      isRunningInsertionEffect = !1,
      didWarnStateUpdateForNotYetMountedComponent = null,
      didWarnAboutUpdateInRender = !1;
    var didWarnAboutUpdateInRenderForAnotherComponent = new Set();
    var fakeActCallbackNode$1 = {},
      firstScheduledRoot = null,
      lastScheduledRoot = null,
      didScheduleMicrotask = !1,
      didScheduleMicrotask_act = !1,
      mightHavePendingSyncWork = !1,
      isFlushingWork = !1,
      currentEventTransitionLane = 0,
      fakeActCallbackNode = {};
    (function () {
      for (var i = 0; i < simpleEventPluginEvents.length; i++) {
        var eventName = simpleEventPluginEvents[i],
          domEventName = eventName.toLowerCase();
        eventName = eventName[0].toUpperCase() + eventName.slice(1);
        registerSimpleEvent(domEventName, "on" + eventName);
      }
      registerSimpleEvent(ANIMATION_END, "onAnimationEnd");
      registerSimpleEvent(ANIMATION_ITERATION, "onAnimationIteration");
      registerSimpleEvent(ANIMATION_START, "onAnimationStart");
      registerSimpleEvent("dblclick", "onDoubleClick");
      registerSimpleEvent("focusin", "onFocus");
      registerSimpleEvent("focusout", "onBlur");
      registerSimpleEvent(TRANSITION_RUN, "onTransitionRun");
      registerSimpleEvent(TRANSITION_START, "onTransitionStart");
      registerSimpleEvent(TRANSITION_CANCEL, "onTransitionCancel");
      registerSimpleEvent(TRANSITION_END, "onTransitionEnd");
    })();
    registerDirectEvent("onMouseEnter", ["mouseout", "mouseover"]);
    registerDirectEvent("onMouseLeave", ["mouseout", "mouseover"]);
    registerDirectEvent("onPointerEnter", ["pointerout", "pointerover"]);
    registerDirectEvent("onPointerLeave", ["pointerout", "pointerover"]);
    registerTwoPhaseEvent(
      "onChange",
      "change click focusin focusout input keydown keyup selectionchange".split(
        " "
      )
    );
    registerTwoPhaseEvent(
      "onSelect",
      "focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(
        " "
      )
    );
    registerTwoPhaseEvent("onBeforeInput", [
      "compositionend",
      "keypress",
      "textInput",
      "paste"
    ]);
    registerTwoPhaseEvent(
      "onCompositionEnd",
      "compositionend focusout keydown keypress keyup mousedown".split(" ")
    );
    registerTwoPhaseEvent(
      "onCompositionStart",
      "compositionstart focusout keydown keypress keyup mousedown".split(" ")
    );
    registerTwoPhaseEvent(
      "onCompositionUpdate",
      "compositionupdate focusout keydown keypress keyup mousedown".split(" ")
    );
    var mediaEventTypes =
        "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(
          " "
        ),
      nonDelegatedEvents = new Set(
        "beforetoggle cancel close invalid load scroll scrollend toggle"
          .split(" ")
          .concat(mediaEventTypes)
      ),
      listeningMarker = "_reactListening" + Math.random().toString(36).slice(2),
      didWarnControlledToUncontrolled = !1,
      didWarnUncontrolledToControlled = !1,
      didWarnFormActionType = !1,
      didWarnFormActionName = !1,
      didWarnFormActionTarget = !1,
      didWarnFormActionMethod = !1,
      didWarnPopoverTargetObject = !1;
    var didWarnForNewBooleanPropsWithEmptyValue = {};
    var NORMALIZE_NEWLINES_REGEX = /\r\n?/g,
      NORMALIZE_NULL_AND_REPLACEMENT_REGEX = /\u0000|\uFFFD/g,
      xlinkNamespace = "http://www.w3.org/1999/xlink",
      xmlNamespace = "http://www.w3.org/XML/1998/namespace",
      EXPECTED_FORM_ACTION_URL =
        "javascript:throw new Error('React form unexpectedly submitted.')",
      SUPPRESS_HYDRATION_WARNING = "suppressHydrationWarning",
      ACTIVITY_START_DATA = "&",
      ACTIVITY_END_DATA = "/&",
      SUSPENSE_START_DATA = "$",
      SUSPENSE_END_DATA = "/$",
      SUSPENSE_PENDING_START_DATA = "$?",
      SUSPENSE_QUEUED_START_DATA = "$~",
      SUSPENSE_FALLBACK_START_DATA = "$!",
      PREAMBLE_CONTRIBUTION_HTML = "html",
      PREAMBLE_CONTRIBUTION_BODY = "body",
      PREAMBLE_CONTRIBUTION_HEAD = "head",
      FORM_STATE_IS_MATCHING = "F!",
      FORM_STATE_IS_NOT_MATCHING = "F",
      DOCUMENT_READY_STATE_LOADING = "loading",
      STYLE = "style",
      HostContextNamespaceNone = 0,
      HostContextNamespaceSvg = 1,
      HostContextNamespaceMath = 2,
      eventsEnabled = null,
      selectionInformation = null,
      warnedUnknownTags = { dialog: !0, webview: !0 },
      currentPopstateTransitionEvent = null,
      schedulerEvent = void 0,
      scheduleTimeout = "function" === typeof setTimeout ? setTimeout : void 0,
      cancelTimeout =
        "function" === typeof clearTimeout ? clearTimeout : void 0,
      noTimeout = -1,
      localPromise = "function" === typeof Promise ? Promise : void 0,
      scheduleMicrotask =
        "function" === typeof queueMicrotask
          ? queueMicrotask
          : "undefined" !== typeof localPromise
            ? function (callback) {
                return localPromise
                  .resolve(null)
                  .then(callback)
                  .catch(handleErrorInNextTick);
              }
            : scheduleTimeout,
      previousHydratableOnEnteringScopedSingleton = null,
      NotLoaded = 0,
      Loaded = 1,
      Errored = 2,
      Settled = 3,
      Inserted = 4,
      preloadPropsMap = new Map(),
      preconnectsSet = new Set(),
      previousDispatcher = ReactDOMSharedInternals.d;
    ReactDOMSharedInternals.d = {
      f: function () {
        var previousWasRendering = previousDispatcher.f(),
          wasRendering = flushSyncWork$1();
        return previousWasRendering || wasRendering;
      },
      r: function (form) {
        var formInst = getInstanceFromNode(form);
        null !== formInst && 5 === formInst.tag && "form" === formInst.type
          ? requestFormReset$1(formInst)
          : previousDispatcher.r(form);
      },
      D: function (href) {
        previousDispatcher.D(href);
        preconnectAs("dns-prefetch", href, null);
      },
      C: function (href, crossOrigin) {
        previousDispatcher.C(href, crossOrigin);
        preconnectAs("preconnect", href, crossOrigin);
      },
      L: function (href, as, options) {
        previousDispatcher.L(href, as, options);
        var ownerDocument = globalDocument;
        if (ownerDocument && href && as) {
          var preloadSelector =
            'link[rel="preload"][as="' +
            escapeSelectorAttributeValueInsideDoubleQuotes(as) +
            '"]';
          "image" === as
            ? options && options.imageSrcSet
              ? ((preloadSelector +=
                  '[imagesrcset="' +
                  escapeSelectorAttributeValueInsideDoubleQuotes(
                    options.imageSrcSet
                  ) +
                  '"]'),
                "string" === typeof options.imageSizes &&
                  (preloadSelector +=
                    '[imagesizes="' +
                    escapeSelectorAttributeValueInsideDoubleQuotes(
                      options.imageSizes
                    ) +
                    '"]'))
              : (preloadSelector +=
                  '[href="' +
                  escapeSelectorAttributeValueInsideDoubleQuotes(href) +
                  '"]')
            : (preloadSelector +=
                '[href="' +
                escapeSelectorAttributeValueInsideDoubleQuotes(href) +
                '"]');
          var key = preloadSelector;
          switch (as) {
            case "style":
              key = getStyleKey(href);
              break;
            case "script":
              key = getScriptKey(href);
          }
          preloadPropsMap.has(key) ||
            ((href = assign(
              {
                rel: "preload",
                href:
                  "image" === as && options && options.imageSrcSet
                    ? void 0
                    : href,
                as: as
              },
              options
            )),
            preloadPropsMap.set(key, href),
            null !== ownerDocument.querySelector(preloadSelector) ||
              ("style" === as &&
                ownerDocument.querySelector(
                  getStylesheetSelectorFromKey(key)
                )) ||
              ("script" === as &&
                ownerDocument.querySelector(getScriptSelectorFromKey(key))) ||
              ((as = ownerDocument.createElement("link")),
              setInitialProperties(as, "link", href),
              markNodeAsHoistable(as),
              ownerDocument.head.appendChild(as)));
        }
      },
      m: function (href, options) {
        previousDispatcher.m(href, options);
        var ownerDocument = globalDocument;
        if (ownerDocument && href) {
          var as =
              options && "string" === typeof options.as ? options.as : "script",
            preloadSelector =
              'link[rel="modulepreload"][as="' +
              escapeSelectorAttributeValueInsideDoubleQuotes(as) +
              '"][href="' +
              escapeSelectorAttributeValueInsideDoubleQuotes(href) +
              '"]',
            key = preloadSelector;
          switch (as) {
            case "audioworklet":
            case "paintworklet":
            case "serviceworker":
            case "sharedworker":
            case "worker":
            case "script":
              key = getScriptKey(href);
          }
          if (
            !preloadPropsMap.has(key) &&
            ((href = assign({ rel: "modulepreload", href: href }, options)),
            preloadPropsMap.set(key, href),
            null === ownerDocument.querySelector(preloadSelector))
          ) {
            switch (as) {
              case "audioworklet":
              case "paintworklet":
              case "serviceworker":
              case "sharedworker":
              case "worker":
              case "script":
                if (ownerDocument.querySelector(getScriptSelectorFromKey(key)))
                  return;
            }
            as = ownerDocument.createElement("link");
            setInitialProperties(as, "link", href);
            markNodeAsHoistable(as);
            ownerDocument.head.appendChild(as);
          }
        }
      },
      X: function (src, options) {
        previousDispatcher.X(src, options);
        var ownerDocument = globalDocument;
        if (ownerDocument && src) {
          var scripts = getResourcesFromRoot(ownerDocument).hoistableScripts,
            key = getScriptKey(src),
            resource = scripts.get(key);
          resource ||
            ((resource = ownerDocument.querySelector(
              getScriptSelectorFromKey(key)
            )),
            resource ||
              ((src = assign({ src: src, async: !0 }, options)),
              (options = preloadPropsMap.get(key)) &&
                adoptPreloadPropsForScript(src, options),
              (resource = ownerDocument.createElement("script")),
              markNodeAsHoistable(resource),
              setInitialProperties(resource, "link", src),
              ownerDocument.head.appendChild(resource)),
            (resource = {
              type: "script",
              instance: resource,
              count: 1,
              state: null
            }),
            scripts.set(key, resource));
        }
      },
      S: function (href, precedence, options) {
        previousDispatcher.S(href, precedence, options);
        var ownerDocument = globalDocument;
        if (ownerDocument && href) {
          var styles = getResourcesFromRoot(ownerDocument).hoistableStyles,
            key = getStyleKey(href);
          precedence = precedence || "default";
          var resource = styles.get(key);
          if (!resource) {
            var state = { loading: NotLoaded, preload: null };
            if (
              (resource = ownerDocument.querySelector(
                getStylesheetSelectorFromKey(key)
              ))
            )
              state.loading = Loaded | Inserted;
            else {
              href = assign(
                {
                  rel: "stylesheet",
                  href: href,
                  "data-precedence": precedence
                },
                options
              );
              (options = preloadPropsMap.get(key)) &&
                adoptPreloadPropsForStylesheet(href, options);
              var link = (resource = ownerDocument.createElement("link"));
              markNodeAsHoistable(link);
              setInitialProperties(link, "link", href);
              link._p = new Promise(function (resolve, reject) {
                link.onload = resolve;
                link.onerror = reject;
              });
              link.addEventListener("load", function () {
                state.loading |= Loaded;
              });
              link.addEventListener("error", function () {
                state.loading |= Errored;
              });
              state.loading |= Inserted;
              insertStylesheet(resource, precedence, ownerDocument);
            }
            resource = {
              type: "stylesheet",
              instance: resource,
              count: 1,
              state: state
            };
            styles.set(key, resource);
          }
        }
      },
      M: function (src, options) {
        previousDispatcher.M(src, options);
        var ownerDocument = globalDocument;
        if (ownerDocument && src) {
          var scripts = getResourcesFromRoot(ownerDocument).hoistableScripts,
            key = getScriptKey(src),
            resource = scripts.get(key);
          resource ||
            ((resource = ownerDocument.querySelector(
              getScriptSelectorFromKey(key)
            )),
            resource ||
              ((src = assign({ src: src, async: !0, type: "module" }, options)),
              (options = preloadPropsMap.get(key)) &&
                adoptPreloadPropsForScript(src, options),
              (resource = ownerDocument.createElement("script")),
              markNodeAsHoistable(resource),
              setInitialProperties(resource, "link", src),
              ownerDocument.head.appendChild(resource)),
            (resource = {
              type: "script",
              instance: resource,
              count: 1,
              state: null
            }),
            scripts.set(key, resource));
        }
      }
    };
    var globalDocument = "undefined" === typeof document ? null : document,
      tagCaches = null,
      SUSPENSEY_STYLESHEET_TIMEOUT = 6e4,
      SUSPENSEY_IMAGE_TIMEOUT = 800,
      SUSPENSEY_IMAGE_TIME_ESTIMATE = 500,
      estimatedBytesWithinLimit = 0,
      LAST_PRECEDENCE = null,
      precedencesByRoot = null,
      NotPendingTransition = NotPending,
      HostTransitionContext = {
        $$typeof: REACT_CONTEXT_TYPE,
        Provider: null,
        Consumer: null,
        _currentValue: NotPendingTransition,
        _currentValue2: NotPendingTransition,
        _threadCount: 0
      },
      badgeFormat = "%c%s%c",
      badgeStyle =
        "background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px",
      resetStyle = "",
      pad = " ",
      bind = Function.prototype.bind;
    var didWarnAboutNestedUpdates = !1;
    var overrideHookState = null,
      overrideHookStateDeletePath = null,
      overrideHookStateRenamePath = null,
      overrideProps = null,
      overridePropsDeletePath = null,
      overridePropsRenamePath = null,
      scheduleUpdate = null,
      scheduleRetry = null,
      setErrorHandler = null,
      setSuspenseHandler = null;
    overrideHookState = function (fiber, id, path, value) {
      id = findHook(fiber, id);
      null !== id &&
        ((path = copyWithSetImpl(id.memoizedState, path, 0, value)),
        (id.memoizedState = path),
        (id.baseState = path),
        (fiber.memoizedProps = assign({}, fiber.memoizedProps)),
        (path = enqueueConcurrentRenderForLane(fiber, 2)),
        null !== path && scheduleUpdateOnFiber(path, fiber, 2));
    };
    overrideHookStateDeletePath = function (fiber, id, path) {
      id = findHook(fiber, id);
      null !== id &&
        ((path = copyWithDeleteImpl(id.memoizedState, path, 0)),
        (id.memoizedState = path),
        (id.baseState = path),
        (fiber.memoizedProps = assign({}, fiber.memoizedProps)),
        (path = enqueueConcurrentRenderForLane(fiber, 2)),
        null !== path && scheduleUpdateOnFiber(path, fiber, 2));
    };
    overrideHookStateRenamePath = function (fiber, id, oldPath, newPath) {
      id = findHook(fiber, id);
      null !== id &&
        ((oldPath = copyWithRename(id.memoizedState, oldPath, newPath)),
        (id.memoizedState = oldPath),
        (id.baseState = oldPath),
        (fiber.memoizedProps = assign({}, fiber.memoizedProps)),
        (oldPath = enqueueConcurrentRenderForLane(fiber, 2)),
        null !== oldPath && scheduleUpdateOnFiber(oldPath, fiber, 2));
    };
    overrideProps = function (fiber, path, value) {
      fiber.pendingProps = copyWithSetImpl(fiber.memoizedProps, path, 0, value);
      fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
      path = enqueueConcurrentRenderForLane(fiber, 2);
      null !== path && scheduleUpdateOnFiber(path, fiber, 2);
    };
    overridePropsDeletePath = function (fiber, path) {
      fiber.pendingProps = copyWithDeleteImpl(fiber.memoizedProps, path, 0);
      fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
      path = enqueueConcurrentRenderForLane(fiber, 2);
      null !== path && scheduleUpdateOnFiber(path, fiber, 2);
    };
    overridePropsRenamePath = function (fiber, oldPath, newPath) {
      fiber.pendingProps = copyWithRename(
        fiber.memoizedProps,
        oldPath,
        newPath
      );
      fiber.alternate && (fiber.alternate.pendingProps = fiber.pendingProps);
      oldPath = enqueueConcurrentRenderForLane(fiber, 2);
      null !== oldPath && scheduleUpdateOnFiber(oldPath, fiber, 2);
    };
    scheduleUpdate = function (fiber) {
      var root = enqueueConcurrentRenderForLane(fiber, 2);
      null !== root && scheduleUpdateOnFiber(root, fiber, 2);
    };
    scheduleRetry = function (fiber) {
      var lane = claimNextRetryLane(),
        root = enqueueConcurrentRenderForLane(fiber, lane);
      null !== root && scheduleUpdateOnFiber(root, fiber, lane);
    };
    setErrorHandler = function (newShouldErrorImpl) {
      shouldErrorImpl = newShouldErrorImpl;
    };
    setSuspenseHandler = function (newShouldSuspendImpl) {
      shouldSuspendImpl = newShouldSuspendImpl;
    };
    var _enabled = !0,
      return_targetInst = null,
      hasScheduledReplayAttempt = !1,
      queuedFocus = null,
      queuedDrag = null,
      queuedMouse = null,
      queuedPointers = new Map(),
      queuedPointerCaptures = new Map(),
      queuedExplicitHydrationTargets = [],
      discreteReplayableEvents =
        "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".split(
          " "
        ),
      lastScheduledReplayQueue = null;
    ReactDOMHydrationRoot.prototype.render = ReactDOMRoot.prototype.render =
      function (children) {
        var root = this._internalRoot;
        if (null === root) throw Error("Cannot update an unmounted root.");
        var args = arguments;
        "function" === typeof args[1]
          ? console.error(
              "does not support the second callback argument. To execute a side effect after rendering, declare it in a component body with useEffect()."
            )
          : isValidContainer(args[1])
            ? console.error(
                "You passed a container to the second argument of root.render(...). You don't need to pass it again since you already passed it to create the root."
              )
            : "undefined" !== typeof args[1] &&
              console.error(
                "You passed a second argument to root.render(...) but it only accepts one argument."
              );
        args = children;
        var current = root.current,
          lane = requestUpdateLane(current);
        updateContainerImpl(current, lane, args, root, null, null);
      };
    ReactDOMHydrationRoot.prototype.unmount = ReactDOMRoot.prototype.unmount =
      function () {
        var args = arguments;
        "function" === typeof args[0] &&
          console.error(
            "does not support a callback argument. To execute a side effect after rendering, declare it in a component body with useEffect()."
          );
        args = this._internalRoot;
        if (null !== args) {
          this._internalRoot = null;
          var container = args.containerInfo;
          (executionContext & (RenderContext | CommitContext)) !== NoContext &&
            console.error(
              "Attempted to synchronously unmount a root while React was already rendering. React cannot finish unmounting the root until the current render has completed, which may lead to a race condition."
            );
          updateContainerImpl(args.current, 2, null, args, null, null);
          flushSyncWork$1();
          container[internalContainerInstanceKey] = null;
        }
      };
    ReactDOMHydrationRoot.prototype.unstable_scheduleHydration = function (
      target
    ) {
      if (target) {
        var updatePriority = resolveUpdatePriority();
        target = { blockedOn: null, target: target, priority: updatePriority };
        for (
          var i = 0;
          i < queuedExplicitHydrationTargets.length &&
          0 !== updatePriority &&
          updatePriority < queuedExplicitHydrationTargets[i].priority;
          i++
        );
        queuedExplicitHydrationTargets.splice(i, 0, target);
        0 === i && attemptExplicitHydrationTarget(target);
      }
    };
    (function () {
      var isomorphicReactPackageVersion = React.version;
      if ("19.2.0" !== isomorphicReactPackageVersion)
        throw Error(
          'Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:\n  - react:      ' +
            (isomorphicReactPackageVersion +
              "\n  - react-dom:  19.2.0\nLearn more: https://react.dev/warnings/version-mismatch")
        );
    })();
    ("function" === typeof Map &&
      null != Map.prototype &&
      "function" === typeof Map.prototype.forEach &&
      "function" === typeof Set &&
      null != Set.prototype &&
      "function" === typeof Set.prototype.clear &&
      "function" === typeof Set.prototype.forEach) ||
      console.error(
        "React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://react.dev/link/react-polyfills"
      );
    ReactDOMSharedInternals.findDOMNode = function (componentOrElement) {
      var fiber = componentOrElement._reactInternals;
      if (void 0 === fiber) {
        if ("function" === typeof componentOrElement.render)
          throw Error("Unable to find node on an unmounted component.");
        componentOrElement = Object.keys(componentOrElement).join(",");
        throw Error(
          "Argument appears to not be a ReactComponent. Keys: " +
            componentOrElement
        );
      }
      componentOrElement = findCurrentFiberUsingSlowPath(fiber);
      componentOrElement =
        null !== componentOrElement
          ? findCurrentHostFiberImpl(componentOrElement)
          : null;
      componentOrElement =
        null === componentOrElement ? null : componentOrElement.stateNode;
      return componentOrElement;
    };
    if (
      !(function () {
        var internals = {
          bundleType: 1,
          version: "19.2.0",
          rendererPackageName: "react-dom",
          currentDispatcherRef: ReactSharedInternals,
          reconcilerVersion: "19.2.0"
        };
        internals.overrideHookState = overrideHookState;
        internals.overrideHookStateDeletePath = overrideHookStateDeletePath;
        internals.overrideHookStateRenamePath = overrideHookStateRenamePath;
        internals.overrideProps = overrideProps;
        internals.overridePropsDeletePath = overridePropsDeletePath;
        internals.overridePropsRenamePath = overridePropsRenamePath;
        internals.scheduleUpdate = scheduleUpdate;
        internals.scheduleRetry = scheduleRetry;
        internals.setErrorHandler = setErrorHandler;
        internals.setSuspenseHandler = setSuspenseHandler;
        internals.scheduleRefresh = scheduleRefresh;
        internals.scheduleRoot = scheduleRoot;
        internals.setRefreshHandler = setRefreshHandler;
        internals.getCurrentFiber = getCurrentFiberForDevTools;
        return injectInternals(internals);
      })() &&
      canUseDOM &&
      window.top === window.self &&
      ((-1 < navigator.userAgent.indexOf("Chrome") &&
        -1 === navigator.userAgent.indexOf("Edge")) ||
        -1 < navigator.userAgent.indexOf("Firefox"))
    ) {
      var protocol = window.location.protocol;
      /^(https?|file):$/.test(protocol) &&
        console.info(
          "%cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools" +
            ("file:" === protocol
              ? "\nYou might need to use a local HTTP server (instead of file://): https://react.dev/link/react-devtools-faq"
              : ""),
          "font-weight:bold"
        );
    }
    exports.createRoot = function (container, options) {
      if (!isValidContainer(container))
        throw Error("Target container is not a DOM element.");
      warnIfReactDOMContainerInDEV(container);
      var isStrictMode = !1,
        identifierPrefix = "",
        onUncaughtError = defaultOnUncaughtError,
        onCaughtError = defaultOnCaughtError,
        onRecoverableError = defaultOnRecoverableError;
      null !== options &&
        void 0 !== options &&
        (options.hydrate
          ? console.warn(
              "hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead."
            )
          : "object" === typeof options &&
            null !== options &&
            options.$$typeof === REACT_ELEMENT_TYPE &&
            console.error(
              "You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:\n\n  let root = createRoot(domContainer);\n  root.render(<App />);"
            ),
        !0 === options.unstable_strictMode && (isStrictMode = !0),
        void 0 !== options.identifierPrefix &&
          (identifierPrefix = options.identifierPrefix),
        void 0 !== options.onUncaughtError &&
          (onUncaughtError = options.onUncaughtError),
        void 0 !== options.onCaughtError &&
          (onCaughtError = options.onCaughtError),
        void 0 !== options.onRecoverableError &&
          (onRecoverableError = options.onRecoverableError));
      options = createFiberRoot(
        container,
        1,
        !1,
        null,
        null,
        isStrictMode,
        identifierPrefix,
        null,
        onUncaughtError,
        onCaughtError,
        onRecoverableError,
        defaultOnDefaultTransitionIndicator
      );
      container[internalContainerInstanceKey] = options.current;
      listenToAllSupportedEvents(container);
      return new ReactDOMRoot(options);
    };
    exports.hydrateRoot = function (container, initialChildren, options) {
      if (!isValidContainer(container))
        throw Error("Target container is not a DOM element.");
      warnIfReactDOMContainerInDEV(container);
      void 0 === initialChildren &&
        console.error(
          "Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)"
        );
      var isStrictMode = !1,
        identifierPrefix = "",
        onUncaughtError = defaultOnUncaughtError,
        onCaughtError = defaultOnCaughtError,
        onRecoverableError = defaultOnRecoverableError,
        formState = null;
      null !== options &&
        void 0 !== options &&
        (!0 === options.unstable_strictMode && (isStrictMode = !0),
        void 0 !== options.identifierPrefix &&
          (identifierPrefix = options.identifierPrefix),
        void 0 !== options.onUncaughtError &&
          (onUncaughtError = options.onUncaughtError),
        void 0 !== options.onCaughtError &&
          (onCaughtError = options.onCaughtError),
        void 0 !== options.onRecoverableError &&
          (onRecoverableError = options.onRecoverableError),
        void 0 !== options.formState && (formState = options.formState));
      initialChildren = createFiberRoot(
        container,
        1,
        !0,
        initialChildren,
        null != options ? options : null,
        isStrictMode,
        identifierPrefix,
        formState,
        onUncaughtError,
        onCaughtError,
        onRecoverableError,
        defaultOnDefaultTransitionIndicator
      );
      initialChildren.context = getContextForSubtree(null);
      options = initialChildren.current;
      isStrictMode = requestUpdateLane(options);
      isStrictMode = getBumpedLaneForHydrationByLane(isStrictMode);
      identifierPrefix = createUpdate(isStrictMode);
      identifierPrefix.callback = null;
      enqueueUpdate(options, identifierPrefix, isStrictMode);
      startUpdateTimerByLane(isStrictMode, "hydrateRoot()", null);
      options = isStrictMode;
      initialChildren.current.lanes = options;
      markRootUpdated$1(initialChildren, options);
      ensureRootIsScheduled(initialChildren);
      container[internalContainerInstanceKey] = initialChildren.current;
      listenToAllSupportedEvents(container);
      return new ReactDOMHydrationRoot(initialChildren);
    };
    exports.version = "19.2.0";
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
  })();


/***/ }),

/***/ "./node_modules/react-dom/cjs/react-dom.development.js":
/*!*************************************************************!*\
  !*** ./node_modules/react-dom/cjs/react-dom.development.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {

"use strict";
/**
 * @license React
 * react-dom.development.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.
 */


 true &&
  (function () {
    function noop() {}
    function testStringCoercion(value) {
      return "" + value;
    }
    function createPortal$1(children, containerInfo, implementation) {
      var key =
        3 < arguments.length && void 0 !== arguments[3] ? arguments[3] : null;
      try {
        testStringCoercion(key);
        var JSCompiler_inline_result = !1;
      } catch (e) {
        JSCompiler_inline_result = !0;
      }
      JSCompiler_inline_result &&
        (console.error(
          "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
          ("function" === typeof Symbol &&
            Symbol.toStringTag &&
            key[Symbol.toStringTag]) ||
            key.constructor.name ||
            "Object"
        ),
        testStringCoercion(key));
      return {
        $$typeof: REACT_PORTAL_TYPE,
        key: null == key ? null : "" + key,
        children: children,
        containerInfo: containerInfo,
        implementation: implementation
      };
    }
    function getCrossOriginStringAs(as, input) {
      if ("font" === as) return "";
      if ("string" === typeof input)
        return "use-credentials" === input ? input : "";
    }
    function getValueDescriptorExpectingObjectForWarning(thing) {
      return null === thing
        ? "`null`"
        : void 0 === thing
          ? "`undefined`"
          : "" === thing
            ? "an empty string"
            : 'something with type "' + typeof thing + '"';
    }
    function getValueDescriptorExpectingEnumForWarning(thing) {
      return null === thing
        ? "`null`"
        : void 0 === thing
          ? "`undefined`"
          : "" === thing
            ? "an empty string"
            : "string" === typeof thing
              ? JSON.stringify(thing)
              : "number" === typeof thing
                ? "`" + thing + "`"
                : 'something with type "' + typeof thing + '"';
    }
    function resolveDispatcher() {
      var dispatcher = ReactSharedInternals.H;
      null === dispatcher &&
        console.error(
          "Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem."
        );
      return dispatcher;
    }
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
    var React = __webpack_require__(/*! react */ "./node_modules/react/index.js"),
      Internals = {
        d: {
          f: noop,
          r: function () {
            throw Error(
              "Invalid form element. requestFormReset must be passed a form that was rendered by React."
            );
          },
          D: noop,
          C: noop,
          L: noop,
          m: noop,
          X: noop,
          S: noop,
          M: noop
        },
        p: 0,
        findDOMNode: null
      },
      REACT_PORTAL_TYPE = Symbol.for("react.portal"),
      ReactSharedInternals =
        React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;
    ("function" === typeof Map &&
      null != Map.prototype &&
      "function" === typeof Map.prototype.forEach &&
      "function" === typeof Set &&
      null != Set.prototype &&
      "function" === typeof Set.prototype.clear &&
      "function" === typeof Set.prototype.forEach) ||
      console.error(
        "React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"
      );
    exports.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =
      Internals;
    exports.createPortal = function (children, container) {
      var key =
        2 < arguments.length && void 0 !== arguments[2] ? arguments[2] : null;
      if (
        !container ||
        (1 !== container.nodeType &&
          9 !== container.nodeType &&
          11 !== container.nodeType)
      )
        throw Error("Target container is not a DOM element.");
      return createPortal$1(children, container, null, key);
    };
    exports.flushSync = function (fn) {
      var previousTransition = ReactSharedInternals.T,
        previousUpdatePriority = Internals.p;
      try {
        if (((ReactSharedInternals.T = null), (Internals.p = 2), fn))
          return fn();
      } finally {
        (ReactSharedInternals.T = previousTransition),
          (Internals.p = previousUpdatePriority),
          Internals.d.f() &&
            console.error(
              "flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task."
            );
      }
    };
    exports.preconnect = function (href, options) {
      "string" === typeof href && href
        ? null != options && "object" !== typeof options
          ? console.error(
              "ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.",
              getValueDescriptorExpectingEnumForWarning(options)
            )
          : null != options &&
            "string" !== typeof options.crossOrigin &&
            console.error(
              "ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.",
              getValueDescriptorExpectingObjectForWarning(options.crossOrigin)
            )
        : console.error(
            "ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",
            getValueDescriptorExpectingObjectForWarning(href)
          );
      "string" === typeof href &&
        (options
          ? ((options = options.crossOrigin),
            (options =
              "string" === typeof options
                ? "use-credentials" === options
                  ? options
                  : ""
                : void 0))
          : (options = null),
        Internals.d.C(href, options));
    };
    exports.prefetchDNS = function (href) {
      if ("string" !== typeof href || !href)
        console.error(
          "ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",
          getValueDescriptorExpectingObjectForWarning(href)
        );
      else if (1 < arguments.length) {
        var options = arguments[1];
        "object" === typeof options && options.hasOwnProperty("crossOrigin")
          ? console.error(
              "ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",
              getValueDescriptorExpectingEnumForWarning(options)
            )
          : console.error(
              "ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",
              getValueDescriptorExpectingEnumForWarning(options)
            );
      }
      "string" === typeof href && Internals.d.D(href);
    };
    exports.preinit = function (href, options) {
      "string" === typeof href && href
        ? null == options || "object" !== typeof options
          ? console.error(
              "ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.",
              getValueDescriptorExpectingEnumForWarning(options)
            )
          : "style" !== options.as &&
            "script" !== options.as &&
            console.error(
              'ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are "style" and "script".',
              getValueDescriptorExpectingEnumForWarning(options.as)
            )
        : console.error(
            "ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",
            getValueDescriptorExpectingObjectForWarning(href)
          );
      if (
        "string" === typeof href &&
        options &&
        "string" === typeof options.as
      ) {
        var as = options.as,
          crossOrigin = getCrossOriginStringAs(as, options.crossOrigin),
          integrity =
            "string" === typeof options.integrity ? options.integrity : void 0,
          fetchPriority =
            "string" === typeof options.fetchPriority
              ? options.fetchPriority
              : void 0;
        "style" === as
          ? Internals.d.S(
              href,
              "string" === typeof options.precedence
                ? options.precedence
                : void 0,
              {
                crossOrigin: crossOrigin,
                integrity: integrity,
                fetchPriority: fetchPriority
              }
            )
          : "script" === as &&
            Internals.d.X(href, {
              crossOrigin: crossOrigin,
              integrity: integrity,
              fetchPriority: fetchPriority,
              nonce: "string" === typeof options.nonce ? options.nonce : void 0
            });
      }
    };
    exports.preinitModule = function (href, options) {
      var encountered = "";
      ("string" === typeof href && href) ||
        (encountered +=
          " The `href` argument encountered was " +
          getValueDescriptorExpectingObjectForWarning(href) +
          ".");
      void 0 !== options && "object" !== typeof options
        ? (encountered +=
            " The `options` argument encountered was " +
            getValueDescriptorExpectingObjectForWarning(options) +
            ".")
        : options &&
          "as" in options &&
          "script" !== options.as &&
          (encountered +=
            " The `as` option encountered was " +
            getValueDescriptorExpectingEnumForWarning(options.as) +
            ".");
      if (encountered)
        console.error(
          "ReactDOM.preinitModule(): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s",
          encountered
        );
      else
        switch (
          ((encountered =
            options && "string" === typeof options.as ? options.as : "script"),
          encountered)
        ) {
          case "script":
            break;
          default:
            (encountered =
              getValueDescriptorExpectingEnumForWarning(encountered)),
              console.error(
                'ReactDOM.preinitModule(): Currently the only supported "as" type for this function is "script" but received "%s" instead. This warning was generated for `href` "%s". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)',
                encountered,
                href
              );
        }
      if ("string" === typeof href)
        if ("object" === typeof options && null !== options) {
          if (null == options.as || "script" === options.as)
            (encountered = getCrossOriginStringAs(
              options.as,
              options.crossOrigin
            )),
              Internals.d.M(href, {
                crossOrigin: encountered,
                integrity:
                  "string" === typeof options.integrity
                    ? options.integrity
                    : void 0,
                nonce:
                  "string" === typeof options.nonce ? options.nonce : void 0
              });
        } else null == options && Internals.d.M(href);
    };
    exports.preload = function (href, options) {
      var encountered = "";
      ("string" === typeof href && href) ||
        (encountered +=
          " The `href` argument encountered was " +
          getValueDescriptorExpectingObjectForWarning(href) +
          ".");
      null == options || "object" !== typeof options
        ? (encountered +=
            " The `options` argument encountered was " +
            getValueDescriptorExpectingObjectForWarning(options) +
            ".")
        : ("string" === typeof options.as && options.as) ||
          (encountered +=
            " The `as` option encountered was " +
            getValueDescriptorExpectingObjectForWarning(options.as) +
            ".");
      encountered &&
        console.error(
          'ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel="preload" as="..." />` tag.%s',
          encountered
        );
      if (
        "string" === typeof href &&
        "object" === typeof options &&
        null !== options &&
        "string" === typeof options.as
      ) {
        encountered = options.as;
        var crossOrigin = getCrossOriginStringAs(
          encountered,
          options.crossOrigin
        );
        Internals.d.L(href, encountered, {
          crossOrigin: crossOrigin,
          integrity:
            "string" === typeof options.integrity ? options.integrity : void 0,
          nonce: "string" === typeof options.nonce ? options.nonce : void 0,
          type: "string" === typeof options.type ? options.type : void 0,
          fetchPriority:
            "string" === typeof options.fetchPriority
              ? options.fetchPriority
              : void 0,
          referrerPolicy:
            "string" === typeof options.referrerPolicy
              ? options.referrerPolicy
              : void 0,
          imageSrcSet:
            "string" === typeof options.imageSrcSet
              ? options.imageSrcSet
              : void 0,
          imageSizes:
            "string" === typeof options.imageSizes
              ? options.imageSizes
              : void 0,
          media: "string" === typeof options.media ? options.media : void 0
        });
      }
    };
    exports.preloadModule = function (href, options) {
      var encountered = "";
      ("string" === typeof href && href) ||
        (encountered +=
          " The `href` argument encountered was " +
          getValueDescriptorExpectingObjectForWarning(href) +
          ".");
      void 0 !== options && "object" !== typeof options
        ? (encountered +=
            " The `options` argument encountered was " +
            getValueDescriptorExpectingObjectForWarning(options) +
            ".")
        : options &&
          "as" in options &&
          "string" !== typeof options.as &&
          (encountered +=
            " The `as` option encountered was " +
            getValueDescriptorExpectingObjectForWarning(options.as) +
            ".");
      encountered &&
        console.error(
          'ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel="modulepreload" as="..." />` tag.%s',
          encountered
        );
      "string" === typeof href &&
        (options
          ? ((encountered = getCrossOriginStringAs(
              options.as,
              options.crossOrigin
            )),
            Internals.d.m(href, {
              as:
                "string" === typeof options.as && "script" !== options.as
                  ? options.as
                  : void 0,
              crossOrigin: encountered,
              integrity:
                "string" === typeof options.integrity
                  ? options.integrity
                  : void 0
            }))
          : Internals.d.m(href));
    };
    exports.requestFormReset = function (form) {
      Internals.d.r(form);
    };
    exports.unstable_batchedUpdates = function (fn, a) {
      return fn(a);
    };
    exports.useFormState = function (action, initialState, permalink) {
      return resolveDispatcher().useFormState(action, initialState, permalink);
    };
    exports.useFormStatus = function () {
      return resolveDispatcher().useHostTransitionStatus();
    };
    exports.version = "19.2.0";
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
  })();


/***/ }),

/***/ "./node_modules/react-dom/client.js":
/*!******************************************!*\
  !*** ./node_modules/react-dom/client.js ***!
  \******************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


function checkDCE() {
  /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
  if (
    typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||
    typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'
  ) {
    return;
  }
  if (true) {
    // This branch is unreachable because this function is only called
    // in production, but the condition is true only in development.
    // Therefore if the branch is still here, dead code elimination wasn't
    // properly applied.
    // Don't change the message. React DevTools relies on it. Also make sure
    // this message doesn't occur elsewhere in this function, or it will cause
    // a false positive.
    throw new Error('^_^');
  }
  // removed by dead control flow

}

if (false) // removed by dead control flow
{} else {
  module.exports = __webpack_require__(/*! ./cjs/react-dom-client.development.js */ "./node_modules/react-dom/cjs/react-dom-client.development.js");
}


/***/ }),

/***/ "./node_modules/react-dom/index.js":
/*!*****************************************!*\
  !*** ./node_modules/react-dom/index.js ***!
  \*****************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


function checkDCE() {
  /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */
  if (
    typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||
    typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'
  ) {
    return;
  }
  if (true) {
    // This branch is unreachable because this function is only called
    // in production, but the condition is true only in development.
    // Therefore if the branch is still here, dead code elimination wasn't
    // properly applied.
    // Don't change the message. React DevTools relies on it. Also make sure
    // this message doesn't occur elsewhere in this function, or it will cause
    // a false positive.
    throw new Error('^_^');
  }
  // removed by dead control flow

}

if (false) // removed by dead control flow
{} else {
  module.exports = __webpack_require__(/*! ./cjs/react-dom.development.js */ "./node_modules/react-dom/cjs/react-dom.development.js");
}


/***/ }),

/***/ "./node_modules/react/cjs/react.development.js":
/*!*****************************************************!*\
  !*** ./node_modules/react/cjs/react.development.js ***!
  \*****************************************************/
/***/ ((module, exports, __webpack_require__) => {

"use strict";
/* module decorator */ module = __webpack_require__.nmd(module);
/**
 * @license React
 * react.development.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.
 */


 true &&
  (function () {
    function defineDeprecationWarning(methodName, info) {
      Object.defineProperty(Component.prototype, methodName, {
        get: function () {
          console.warn(
            "%s(...) is deprecated in plain JavaScript React classes. %s",
            info[0],
            info[1]
          );
        }
      });
    }
    function getIteratorFn(maybeIterable) {
      if (null === maybeIterable || "object" !== typeof maybeIterable)
        return null;
      maybeIterable =
        (MAYBE_ITERATOR_SYMBOL && maybeIterable[MAYBE_ITERATOR_SYMBOL]) ||
        maybeIterable["@@iterator"];
      return "function" === typeof maybeIterable ? maybeIterable : null;
    }
    function warnNoop(publicInstance, callerName) {
      publicInstance =
        ((publicInstance = publicInstance.constructor) &&
          (publicInstance.displayName || publicInstance.name)) ||
        "ReactClass";
      var warningKey = publicInstance + "." + callerName;
      didWarnStateUpdateForUnmountedComponent[warningKey] ||
        (console.error(
          "Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",
          callerName,
          publicInstance
        ),
        (didWarnStateUpdateForUnmountedComponent[warningKey] = !0));
    }
    function Component(props, context, updater) {
      this.props = props;
      this.context = context;
      this.refs = emptyObject;
      this.updater = updater || ReactNoopUpdateQueue;
    }
    function ComponentDummy() {}
    function PureComponent(props, context, updater) {
      this.props = props;
      this.context = context;
      this.refs = emptyObject;
      this.updater = updater || ReactNoopUpdateQueue;
    }
    function noop() {}
    function testStringCoercion(value) {
      return "" + value;
    }
    function checkKeyStringCoercion(value) {
      try {
        testStringCoercion(value);
        var JSCompiler_inline_result = !1;
      } catch (e) {
        JSCompiler_inline_result = !0;
      }
      if (JSCompiler_inline_result) {
        JSCompiler_inline_result = console;
        var JSCompiler_temp_const = JSCompiler_inline_result.error;
        var JSCompiler_inline_result$jscomp$0 =
          ("function" === typeof Symbol &&
            Symbol.toStringTag &&
            value[Symbol.toStringTag]) ||
          value.constructor.name ||
          "Object";
        JSCompiler_temp_const.call(
          JSCompiler_inline_result,
          "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
          JSCompiler_inline_result$jscomp$0
        );
        return testStringCoercion(value);
      }
    }
    function getComponentNameFromType(type) {
      if (null == type) return null;
      if ("function" === typeof type)
        return type.$$typeof === REACT_CLIENT_REFERENCE
          ? null
          : type.displayName || type.name || null;
      if ("string" === typeof type) return type;
      switch (type) {
        case REACT_FRAGMENT_TYPE:
          return "Fragment";
        case REACT_PROFILER_TYPE:
          return "Profiler";
        case REACT_STRICT_MODE_TYPE:
          return "StrictMode";
        case REACT_SUSPENSE_TYPE:
          return "Suspense";
        case REACT_SUSPENSE_LIST_TYPE:
          return "SuspenseList";
        case REACT_ACTIVITY_TYPE:
          return "Activity";
      }
      if ("object" === typeof type)
        switch (
          ("number" === typeof type.tag &&
            console.error(
              "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
            ),
          type.$$typeof)
        ) {
          case REACT_PORTAL_TYPE:
            return "Portal";
          case REACT_CONTEXT_TYPE:
            return type.displayName || "Context";
          case REACT_CONSUMER_TYPE:
            return (type._context.displayName || "Context") + ".Consumer";
          case REACT_FORWARD_REF_TYPE:
            var innerType = type.render;
            type = type.displayName;
            type ||
              ((type = innerType.displayName || innerType.name || ""),
              (type = "" !== type ? "ForwardRef(" + type + ")" : "ForwardRef"));
            return type;
          case REACT_MEMO_TYPE:
            return (
              (innerType = type.displayName || null),
              null !== innerType
                ? innerType
                : getComponentNameFromType(type.type) || "Memo"
            );
          case REACT_LAZY_TYPE:
            innerType = type._payload;
            type = type._init;
            try {
              return getComponentNameFromType(type(innerType));
            } catch (x) {}
        }
      return null;
    }
    function getTaskName(type) {
      if (type === REACT_FRAGMENT_TYPE) return "<>";
      if (
        "object" === typeof type &&
        null !== type &&
        type.$$typeof === REACT_LAZY_TYPE
      )
        return "<...>";
      try {
        var name = getComponentNameFromType(type);
        return name ? "<" + name + ">" : "<...>";
      } catch (x) {
        return "<...>";
      }
    }
    function getOwner() {
      var dispatcher = ReactSharedInternals.A;
      return null === dispatcher ? null : dispatcher.getOwner();
    }
    function UnknownOwner() {
      return Error("react-stack-top-frame");
    }
    function hasValidKey(config) {
      if (hasOwnProperty.call(config, "key")) {
        var getter = Object.getOwnPropertyDescriptor(config, "key").get;
        if (getter && getter.isReactWarning) return !1;
      }
      return void 0 !== config.key;
    }
    function defineKeyPropWarningGetter(props, displayName) {
      function warnAboutAccessingKey() {
        specialPropKeyWarningShown ||
          ((specialPropKeyWarningShown = !0),
          console.error(
            "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
            displayName
          ));
      }
      warnAboutAccessingKey.isReactWarning = !0;
      Object.defineProperty(props, "key", {
        get: warnAboutAccessingKey,
        configurable: !0
      });
    }
    function elementRefGetterWithDeprecationWarning() {
      var componentName = getComponentNameFromType(this.type);
      didWarnAboutElementRef[componentName] ||
        ((didWarnAboutElementRef[componentName] = !0),
        console.error(
          "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
        ));
      componentName = this.props.ref;
      return void 0 !== componentName ? componentName : null;
    }
    function ReactElement(type, key, props, owner, debugStack, debugTask) {
      var refProp = props.ref;
      type = {
        $$typeof: REACT_ELEMENT_TYPE,
        type: type,
        key: key,
        props: props,
        _owner: owner
      };
      null !== (void 0 !== refProp ? refProp : null)
        ? Object.defineProperty(type, "ref", {
            enumerable: !1,
            get: elementRefGetterWithDeprecationWarning
          })
        : Object.defineProperty(type, "ref", { enumerable: !1, value: null });
      type._store = {};
      Object.defineProperty(type._store, "validated", {
        configurable: !1,
        enumerable: !1,
        writable: !0,
        value: 0
      });
      Object.defineProperty(type, "_debugInfo", {
        configurable: !1,
        enumerable: !1,
        writable: !0,
        value: null
      });
      Object.defineProperty(type, "_debugStack", {
        configurable: !1,
        enumerable: !1,
        writable: !0,
        value: debugStack
      });
      Object.defineProperty(type, "_debugTask", {
        configurable: !1,
        enumerable: !1,
        writable: !0,
        value: debugTask
      });
      Object.freeze && (Object.freeze(type.props), Object.freeze(type));
      return type;
    }
    function cloneAndReplaceKey(oldElement, newKey) {
      newKey = ReactElement(
        oldElement.type,
        newKey,
        oldElement.props,
        oldElement._owner,
        oldElement._debugStack,
        oldElement._debugTask
      );
      oldElement._store &&
        (newKey._store.validated = oldElement._store.validated);
      return newKey;
    }
    function validateChildKeys(node) {
      isValidElement(node)
        ? node._store && (node._store.validated = 1)
        : "object" === typeof node &&
          null !== node &&
          node.$$typeof === REACT_LAZY_TYPE &&
          ("fulfilled" === node._payload.status
            ? isValidElement(node._payload.value) &&
              node._payload.value._store &&
              (node._payload.value._store.validated = 1)
            : node._store && (node._store.validated = 1));
    }
    function isValidElement(object) {
      return (
        "object" === typeof object &&
        null !== object &&
        object.$$typeof === REACT_ELEMENT_TYPE
      );
    }
    function escape(key) {
      var escaperLookup = { "=": "=0", ":": "=2" };
      return (
        "$" +
        key.replace(/[=:]/g, function (match) {
          return escaperLookup[match];
        })
      );
    }
    function getElementKey(element, index) {
      return "object" === typeof element &&
        null !== element &&
        null != element.key
        ? (checkKeyStringCoercion(element.key), escape("" + element.key))
        : index.toString(36);
    }
    function resolveThenable(thenable) {
      switch (thenable.status) {
        case "fulfilled":
          return thenable.value;
        case "rejected":
          throw thenable.reason;
        default:
          switch (
            ("string" === typeof thenable.status
              ? thenable.then(noop, noop)
              : ((thenable.status = "pending"),
                thenable.then(
                  function (fulfilledValue) {
                    "pending" === thenable.status &&
                      ((thenable.status = "fulfilled"),
                      (thenable.value = fulfilledValue));
                  },
                  function (error) {
                    "pending" === thenable.status &&
                      ((thenable.status = "rejected"),
                      (thenable.reason = error));
                  }
                )),
            thenable.status)
          ) {
            case "fulfilled":
              return thenable.value;
            case "rejected":
              throw thenable.reason;
          }
      }
      throw thenable;
    }
    function mapIntoArray(children, array, escapedPrefix, nameSoFar, callback) {
      var type = typeof children;
      if ("undefined" === type || "boolean" === type) children = null;
      var invokeCallback = !1;
      if (null === children) invokeCallback = !0;
      else
        switch (type) {
          case "bigint":
          case "string":
          case "number":
            invokeCallback = !0;
            break;
          case "object":
            switch (children.$$typeof) {
              case REACT_ELEMENT_TYPE:
              case REACT_PORTAL_TYPE:
                invokeCallback = !0;
                break;
              case REACT_LAZY_TYPE:
                return (
                  (invokeCallback = children._init),
                  mapIntoArray(
                    invokeCallback(children._payload),
                    array,
                    escapedPrefix,
                    nameSoFar,
                    callback
                  )
                );
            }
        }
      if (invokeCallback) {
        invokeCallback = children;
        callback = callback(invokeCallback);
        var childKey =
          "" === nameSoFar ? "." + getElementKey(invokeCallback, 0) : nameSoFar;
        isArrayImpl(callback)
          ? ((escapedPrefix = ""),
            null != childKey &&
              (escapedPrefix =
                childKey.replace(userProvidedKeyEscapeRegex, "$&/") + "/"),
            mapIntoArray(callback, array, escapedPrefix, "", function (c) {
              return c;
            }))
          : null != callback &&
            (isValidElement(callback) &&
              (null != callback.key &&
                ((invokeCallback && invokeCallback.key === callback.key) ||
                  checkKeyStringCoercion(callback.key)),
              (escapedPrefix = cloneAndReplaceKey(
                callback,
                escapedPrefix +
                  (null == callback.key ||
                  (invokeCallback && invokeCallback.key === callback.key)
                    ? ""
                    : ("" + callback.key).replace(
                        userProvidedKeyEscapeRegex,
                        "$&/"
                      ) + "/") +
                  childKey
              )),
              "" !== nameSoFar &&
                null != invokeCallback &&
                isValidElement(invokeCallback) &&
                null == invokeCallback.key &&
                invokeCallback._store &&
                !invokeCallback._store.validated &&
                (escapedPrefix._store.validated = 2),
              (callback = escapedPrefix)),
            array.push(callback));
        return 1;
      }
      invokeCallback = 0;
      childKey = "" === nameSoFar ? "." : nameSoFar + ":";
      if (isArrayImpl(children))
        for (var i = 0; i < children.length; i++)
          (nameSoFar = children[i]),
            (type = childKey + getElementKey(nameSoFar, i)),
            (invokeCallback += mapIntoArray(
              nameSoFar,
              array,
              escapedPrefix,
              type,
              callback
            ));
      else if (((i = getIteratorFn(children)), "function" === typeof i))
        for (
          i === children.entries &&
            (didWarnAboutMaps ||
              console.warn(
                "Using Maps as children is not supported. Use an array of keyed ReactElements instead."
              ),
            (didWarnAboutMaps = !0)),
            children = i.call(children),
            i = 0;
          !(nameSoFar = children.next()).done;

        )
          (nameSoFar = nameSoFar.value),
            (type = childKey + getElementKey(nameSoFar, i++)),
            (invokeCallback += mapIntoArray(
              nameSoFar,
              array,
              escapedPrefix,
              type,
              callback
            ));
      else if ("object" === type) {
        if ("function" === typeof children.then)
          return mapIntoArray(
            resolveThenable(children),
            array,
            escapedPrefix,
            nameSoFar,
            callback
          );
        array = String(children);
        throw Error(
          "Objects are not valid as a React child (found: " +
            ("[object Object]" === array
              ? "object with keys {" + Object.keys(children).join(", ") + "}"
              : array) +
            "). If you meant to render a collection of children, use an array instead."
        );
      }
      return invokeCallback;
    }
    function mapChildren(children, func, context) {
      if (null == children) return children;
      var result = [],
        count = 0;
      mapIntoArray(children, result, "", "", function (child) {
        return func.call(context, child, count++);
      });
      return result;
    }
    function lazyInitializer(payload) {
      if (-1 === payload._status) {
        var ioInfo = payload._ioInfo;
        null != ioInfo && (ioInfo.start = ioInfo.end = performance.now());
        ioInfo = payload._result;
        var thenable = ioInfo();
        thenable.then(
          function (moduleObject) {
            if (0 === payload._status || -1 === payload._status) {
              payload._status = 1;
              payload._result = moduleObject;
              var _ioInfo = payload._ioInfo;
              null != _ioInfo && (_ioInfo.end = performance.now());
              void 0 === thenable.status &&
                ((thenable.status = "fulfilled"),
                (thenable.value = moduleObject));
            }
          },
          function (error) {
            if (0 === payload._status || -1 === payload._status) {
              payload._status = 2;
              payload._result = error;
              var _ioInfo2 = payload._ioInfo;
              null != _ioInfo2 && (_ioInfo2.end = performance.now());
              void 0 === thenable.status &&
                ((thenable.status = "rejected"), (thenable.reason = error));
            }
          }
        );
        ioInfo = payload._ioInfo;
        if (null != ioInfo) {
          ioInfo.value = thenable;
          var displayName = thenable.displayName;
          "string" === typeof displayName && (ioInfo.name = displayName);
        }
        -1 === payload._status &&
          ((payload._status = 0), (payload._result = thenable));
      }
      if (1 === payload._status)
        return (
          (ioInfo = payload._result),
          void 0 === ioInfo &&
            console.error(
              "lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n  const MyComponent = lazy(() => import('./MyComponent'))\n\nDid you accidentally put curly braces around the import?",
              ioInfo
            ),
          "default" in ioInfo ||
            console.error(
              "lazy: Expected the result of a dynamic import() call. Instead received: %s\n\nYour code should look like: \n  const MyComponent = lazy(() => import('./MyComponent'))",
              ioInfo
            ),
          ioInfo.default
        );
      throw payload._result;
    }
    function resolveDispatcher() {
      var dispatcher = ReactSharedInternals.H;
      null === dispatcher &&
        console.error(
          "Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:\n1. You might have mismatching versions of React and the renderer (such as React DOM)\n2. You might be breaking the Rules of Hooks\n3. You might have more than one copy of React in the same app\nSee https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem."
        );
      return dispatcher;
    }
    function releaseAsyncTransition() {
      ReactSharedInternals.asyncTransitions--;
    }
    function enqueueTask(task) {
      if (null === enqueueTaskImpl)
        try {
          var requireString = ("require" + Math.random()).slice(0, 7);
          enqueueTaskImpl = (module && module[requireString]).call(
            module,
            "timers"
          ).setImmediate;
        } catch (_err) {
          enqueueTaskImpl = function (callback) {
            !1 === didWarnAboutMessageChannel &&
              ((didWarnAboutMessageChannel = !0),
              "undefined" === typeof MessageChannel &&
                console.error(
                  "This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."
                ));
            var channel = new MessageChannel();
            channel.port1.onmessage = callback;
            channel.port2.postMessage(void 0);
          };
        }
      return enqueueTaskImpl(task);
    }
    function aggregateErrors(errors) {
      return 1 < errors.length && "function" === typeof AggregateError
        ? new AggregateError(errors)
        : errors[0];
    }
    function popActScope(prevActQueue, prevActScopeDepth) {
      prevActScopeDepth !== actScopeDepth - 1 &&
        console.error(
          "You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "
        );
      actScopeDepth = prevActScopeDepth;
    }
    function recursivelyFlushAsyncActWork(returnValue, resolve, reject) {
      var queue = ReactSharedInternals.actQueue;
      if (null !== queue)
        if (0 !== queue.length)
          try {
            flushActQueue(queue);
            enqueueTask(function () {
              return recursivelyFlushAsyncActWork(returnValue, resolve, reject);
            });
            return;
          } catch (error) {
            ReactSharedInternals.thrownErrors.push(error);
          }
        else ReactSharedInternals.actQueue = null;
      0 < ReactSharedInternals.thrownErrors.length
        ? ((queue = aggregateErrors(ReactSharedInternals.thrownErrors)),
          (ReactSharedInternals.thrownErrors.length = 0),
          reject(queue))
        : resolve(returnValue);
    }
    function flushActQueue(queue) {
      if (!isFlushing) {
        isFlushing = !0;
        var i = 0;
        try {
          for (; i < queue.length; i++) {
            var callback = queue[i];
            do {
              ReactSharedInternals.didUsePromise = !1;
              var continuation = callback(!1);
              if (null !== continuation) {
                if (ReactSharedInternals.didUsePromise) {
                  queue[i] = callback;
                  queue.splice(0, i);
                  return;
                }
                callback = continuation;
              } else break;
            } while (1);
          }
          queue.length = 0;
        } catch (error) {
          queue.splice(0, i + 1), ReactSharedInternals.thrownErrors.push(error);
        } finally {
          isFlushing = !1;
        }
      }
    }
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
    var REACT_ELEMENT_TYPE = Symbol.for("react.transitional.element"),
      REACT_PORTAL_TYPE = Symbol.for("react.portal"),
      REACT_FRAGMENT_TYPE = Symbol.for("react.fragment"),
      REACT_STRICT_MODE_TYPE = Symbol.for("react.strict_mode"),
      REACT_PROFILER_TYPE = Symbol.for("react.profiler"),
      REACT_CONSUMER_TYPE = Symbol.for("react.consumer"),
      REACT_CONTEXT_TYPE = Symbol.for("react.context"),
      REACT_FORWARD_REF_TYPE = Symbol.for("react.forward_ref"),
      REACT_SUSPENSE_TYPE = Symbol.for("react.suspense"),
      REACT_SUSPENSE_LIST_TYPE = Symbol.for("react.suspense_list"),
      REACT_MEMO_TYPE = Symbol.for("react.memo"),
      REACT_LAZY_TYPE = Symbol.for("react.lazy"),
      REACT_ACTIVITY_TYPE = Symbol.for("react.activity"),
      MAYBE_ITERATOR_SYMBOL = Symbol.iterator,
      didWarnStateUpdateForUnmountedComponent = {},
      ReactNoopUpdateQueue = {
        isMounted: function () {
          return !1;
        },
        enqueueForceUpdate: function (publicInstance) {
          warnNoop(publicInstance, "forceUpdate");
        },
        enqueueReplaceState: function (publicInstance) {
          warnNoop(publicInstance, "replaceState");
        },
        enqueueSetState: function (publicInstance) {
          warnNoop(publicInstance, "setState");
        }
      },
      assign = Object.assign,
      emptyObject = {};
    Object.freeze(emptyObject);
    Component.prototype.isReactComponent = {};
    Component.prototype.setState = function (partialState, callback) {
      if (
        "object" !== typeof partialState &&
        "function" !== typeof partialState &&
        null != partialState
      )
        throw Error(
          "takes an object of state variables to update or a function which returns an object of state variables."
        );
      this.updater.enqueueSetState(this, partialState, callback, "setState");
    };
    Component.prototype.forceUpdate = function (callback) {
      this.updater.enqueueForceUpdate(this, callback, "forceUpdate");
    };
    var deprecatedAPIs = {
      isMounted: [
        "isMounted",
        "Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."
      ],
      replaceState: [
        "replaceState",
        "Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."
      ]
    };
    for (fnName in deprecatedAPIs)
      deprecatedAPIs.hasOwnProperty(fnName) &&
        defineDeprecationWarning(fnName, deprecatedAPIs[fnName]);
    ComponentDummy.prototype = Component.prototype;
    deprecatedAPIs = PureComponent.prototype = new ComponentDummy();
    deprecatedAPIs.constructor = PureComponent;
    assign(deprecatedAPIs, Component.prototype);
    deprecatedAPIs.isPureReactComponent = !0;
    var isArrayImpl = Array.isArray,
      REACT_CLIENT_REFERENCE = Symbol.for("react.client.reference"),
      ReactSharedInternals = {
        H: null,
        A: null,
        T: null,
        S: null,
        actQueue: null,
        asyncTransitions: 0,
        isBatchingLegacy: !1,
        didScheduleLegacyUpdate: !1,
        didUsePromise: !1,
        thrownErrors: [],
        getCurrentStack: null,
        recentlyCreatedOwnerStacks: 0
      },
      hasOwnProperty = Object.prototype.hasOwnProperty,
      createTask = console.createTask
        ? console.createTask
        : function () {
            return null;
          };
    deprecatedAPIs = {
      react_stack_bottom_frame: function (callStackForError) {
        return callStackForError();
      }
    };
    var specialPropKeyWarningShown, didWarnAboutOldJSXRuntime;
    var didWarnAboutElementRef = {};
    var unknownOwnerDebugStack = deprecatedAPIs.react_stack_bottom_frame.bind(
      deprecatedAPIs,
      UnknownOwner
    )();
    var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));
    var didWarnAboutMaps = !1,
      userProvidedKeyEscapeRegex = /\/+/g,
      reportGlobalError =
        "function" === typeof reportError
          ? reportError
          : function (error) {
              if (
                "object" === typeof window &&
                "function" === typeof window.ErrorEvent
              ) {
                var event = new window.ErrorEvent("error", {
                  bubbles: !0,
                  cancelable: !0,
                  message:
                    "object" === typeof error &&
                    null !== error &&
                    "string" === typeof error.message
                      ? String(error.message)
                      : String(error),
                  error: error
                });
                if (!window.dispatchEvent(event)) return;
              } else if (
                "object" === typeof process &&
                "function" === typeof process.emit
              ) {
                process.emit("uncaughtException", error);
                return;
              }
              console.error(error);
            },
      didWarnAboutMessageChannel = !1,
      enqueueTaskImpl = null,
      actScopeDepth = 0,
      didWarnNoAwaitAct = !1,
      isFlushing = !1,
      queueSeveralMicrotasks =
        "function" === typeof queueMicrotask
          ? function (callback) {
              queueMicrotask(function () {
                return queueMicrotask(callback);
              });
            }
          : enqueueTask;
    deprecatedAPIs = Object.freeze({
      __proto__: null,
      c: function (size) {
        return resolveDispatcher().useMemoCache(size);
      }
    });
    var fnName = {
      map: mapChildren,
      forEach: function (children, forEachFunc, forEachContext) {
        mapChildren(
          children,
          function () {
            forEachFunc.apply(this, arguments);
          },
          forEachContext
        );
      },
      count: function (children) {
        var n = 0;
        mapChildren(children, function () {
          n++;
        });
        return n;
      },
      toArray: function (children) {
        return (
          mapChildren(children, function (child) {
            return child;
          }) || []
        );
      },
      only: function (children) {
        if (!isValidElement(children))
          throw Error(
            "React.Children.only expected to receive a single React element child."
          );
        return children;
      }
    };
    exports.Activity = REACT_ACTIVITY_TYPE;
    exports.Children = fnName;
    exports.Component = Component;
    exports.Fragment = REACT_FRAGMENT_TYPE;
    exports.Profiler = REACT_PROFILER_TYPE;
    exports.PureComponent = PureComponent;
    exports.StrictMode = REACT_STRICT_MODE_TYPE;
    exports.Suspense = REACT_SUSPENSE_TYPE;
    exports.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE =
      ReactSharedInternals;
    exports.__COMPILER_RUNTIME = deprecatedAPIs;
    exports.act = function (callback) {
      var prevActQueue = ReactSharedInternals.actQueue,
        prevActScopeDepth = actScopeDepth;
      actScopeDepth++;
      var queue = (ReactSharedInternals.actQueue =
          null !== prevActQueue ? prevActQueue : []),
        didAwaitActCall = !1;
      try {
        var result = callback();
      } catch (error) {
        ReactSharedInternals.thrownErrors.push(error);
      }
      if (0 < ReactSharedInternals.thrownErrors.length)
        throw (
          (popActScope(prevActQueue, prevActScopeDepth),
          (callback = aggregateErrors(ReactSharedInternals.thrownErrors)),
          (ReactSharedInternals.thrownErrors.length = 0),
          callback)
        );
      if (
        null !== result &&
        "object" === typeof result &&
        "function" === typeof result.then
      ) {
        var thenable = result;
        queueSeveralMicrotasks(function () {
          didAwaitActCall ||
            didWarnNoAwaitAct ||
            ((didWarnNoAwaitAct = !0),
            console.error(
              "You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"
            ));
        });
        return {
          then: function (resolve, reject) {
            didAwaitActCall = !0;
            thenable.then(
              function (returnValue) {
                popActScope(prevActQueue, prevActScopeDepth);
                if (0 === prevActScopeDepth) {
                  try {
                    flushActQueue(queue),
                      enqueueTask(function () {
                        return recursivelyFlushAsyncActWork(
                          returnValue,
                          resolve,
                          reject
                        );
                      });
                  } catch (error$0) {
                    ReactSharedInternals.thrownErrors.push(error$0);
                  }
                  if (0 < ReactSharedInternals.thrownErrors.length) {
                    var _thrownError = aggregateErrors(
                      ReactSharedInternals.thrownErrors
                    );
                    ReactSharedInternals.thrownErrors.length = 0;
                    reject(_thrownError);
                  }
                } else resolve(returnValue);
              },
              function (error) {
                popActScope(prevActQueue, prevActScopeDepth);
                0 < ReactSharedInternals.thrownErrors.length
                  ? ((error = aggregateErrors(
                      ReactSharedInternals.thrownErrors
                    )),
                    (ReactSharedInternals.thrownErrors.length = 0),
                    reject(error))
                  : reject(error);
              }
            );
          }
        };
      }
      var returnValue$jscomp$0 = result;
      popActScope(prevActQueue, prevActScopeDepth);
      0 === prevActScopeDepth &&
        (flushActQueue(queue),
        0 !== queue.length &&
          queueSeveralMicrotasks(function () {
            didAwaitActCall ||
              didWarnNoAwaitAct ||
              ((didWarnNoAwaitAct = !0),
              console.error(
                "A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\n\nawait act(() => ...)"
              ));
          }),
        (ReactSharedInternals.actQueue = null));
      if (0 < ReactSharedInternals.thrownErrors.length)
        throw (
          ((callback = aggregateErrors(ReactSharedInternals.thrownErrors)),
          (ReactSharedInternals.thrownErrors.length = 0),
          callback)
        );
      return {
        then: function (resolve, reject) {
          didAwaitActCall = !0;
          0 === prevActScopeDepth
            ? ((ReactSharedInternals.actQueue = queue),
              enqueueTask(function () {
                return recursivelyFlushAsyncActWork(
                  returnValue$jscomp$0,
                  resolve,
                  reject
                );
              }))
            : resolve(returnValue$jscomp$0);
        }
      };
    };
    exports.cache = function (fn) {
      return function () {
        return fn.apply(null, arguments);
      };
    };
    exports.cacheSignal = function () {
      return null;
    };
    exports.captureOwnerStack = function () {
      var getCurrentStack = ReactSharedInternals.getCurrentStack;
      return null === getCurrentStack ? null : getCurrentStack();
    };
    exports.cloneElement = function (element, config, children) {
      if (null === element || void 0 === element)
        throw Error(
          "The argument must be a React element, but you passed " +
            element +
            "."
        );
      var props = assign({}, element.props),
        key = element.key,
        owner = element._owner;
      if (null != config) {
        var JSCompiler_inline_result;
        a: {
          if (
            hasOwnProperty.call(config, "ref") &&
            (JSCompiler_inline_result = Object.getOwnPropertyDescriptor(
              config,
              "ref"
            ).get) &&
            JSCompiler_inline_result.isReactWarning
          ) {
            JSCompiler_inline_result = !1;
            break a;
          }
          JSCompiler_inline_result = void 0 !== config.ref;
        }
        JSCompiler_inline_result && (owner = getOwner());
        hasValidKey(config) &&
          (checkKeyStringCoercion(config.key), (key = "" + config.key));
        for (propName in config)
          !hasOwnProperty.call(config, propName) ||
            "key" === propName ||
            "__self" === propName ||
            "__source" === propName ||
            ("ref" === propName && void 0 === config.ref) ||
            (props[propName] = config[propName]);
      }
      var propName = arguments.length - 2;
      if (1 === propName) props.children = children;
      else if (1 < propName) {
        JSCompiler_inline_result = Array(propName);
        for (var i = 0; i < propName; i++)
          JSCompiler_inline_result[i] = arguments[i + 2];
        props.children = JSCompiler_inline_result;
      }
      props = ReactElement(
        element.type,
        key,
        props,
        owner,
        element._debugStack,
        element._debugTask
      );
      for (key = 2; key < arguments.length; key++)
        validateChildKeys(arguments[key]);
      return props;
    };
    exports.createContext = function (defaultValue) {
      defaultValue = {
        $$typeof: REACT_CONTEXT_TYPE,
        _currentValue: defaultValue,
        _currentValue2: defaultValue,
        _threadCount: 0,
        Provider: null,
        Consumer: null
      };
      defaultValue.Provider = defaultValue;
      defaultValue.Consumer = {
        $$typeof: REACT_CONSUMER_TYPE,
        _context: defaultValue
      };
      defaultValue._currentRenderer = null;
      defaultValue._currentRenderer2 = null;
      return defaultValue;
    };
    exports.createElement = function (type, config, children) {
      for (var i = 2; i < arguments.length; i++)
        validateChildKeys(arguments[i]);
      i = {};
      var key = null;
      if (null != config)
        for (propName in (didWarnAboutOldJSXRuntime ||
          !("__self" in config) ||
          "key" in config ||
          ((didWarnAboutOldJSXRuntime = !0),
          console.warn(
            "Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform"
          )),
        hasValidKey(config) &&
          (checkKeyStringCoercion(config.key), (key = "" + config.key)),
        config))
          hasOwnProperty.call(config, propName) &&
            "key" !== propName &&
            "__self" !== propName &&
            "__source" !== propName &&
            (i[propName] = config[propName]);
      var childrenLength = arguments.length - 2;
      if (1 === childrenLength) i.children = children;
      else if (1 < childrenLength) {
        for (
          var childArray = Array(childrenLength), _i = 0;
          _i < childrenLength;
          _i++
        )
          childArray[_i] = arguments[_i + 2];
        Object.freeze && Object.freeze(childArray);
        i.children = childArray;
      }
      if (type && type.defaultProps)
        for (propName in ((childrenLength = type.defaultProps), childrenLength))
          void 0 === i[propName] && (i[propName] = childrenLength[propName]);
      key &&
        defineKeyPropWarningGetter(
          i,
          "function" === typeof type
            ? type.displayName || type.name || "Unknown"
            : type
        );
      var propName = 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;
      return ReactElement(
        type,
        key,
        i,
        getOwner(),
        propName ? Error("react-stack-top-frame") : unknownOwnerDebugStack,
        propName ? createTask(getTaskName(type)) : unknownOwnerDebugTask
      );
    };
    exports.createRef = function () {
      var refObject = { current: null };
      Object.seal(refObject);
      return refObject;
    };
    exports.forwardRef = function (render) {
      null != render && render.$$typeof === REACT_MEMO_TYPE
        ? console.error(
            "forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."
          )
        : "function" !== typeof render
          ? console.error(
              "forwardRef requires a render function but was given %s.",
              null === render ? "null" : typeof render
            )
          : 0 !== render.length &&
            2 !== render.length &&
            console.error(
              "forwardRef render functions accept exactly two parameters: props and ref. %s",
              1 === render.length
                ? "Did you forget to use the ref parameter?"
                : "Any additional parameter will be undefined."
            );
      null != render &&
        null != render.defaultProps &&
        console.error(
          "forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?"
        );
      var elementType = { $$typeof: REACT_FORWARD_REF_TYPE, render: render },
        ownName;
      Object.defineProperty(elementType, "displayName", {
        enumerable: !1,
        configurable: !0,
        get: function () {
          return ownName;
        },
        set: function (name) {
          ownName = name;
          render.name ||
            render.displayName ||
            (Object.defineProperty(render, "name", { value: name }),
            (render.displayName = name));
        }
      });
      return elementType;
    };
    exports.isValidElement = isValidElement;
    exports.lazy = function (ctor) {
      ctor = { _status: -1, _result: ctor };
      var lazyType = {
          $$typeof: REACT_LAZY_TYPE,
          _payload: ctor,
          _init: lazyInitializer
        },
        ioInfo = {
          name: "lazy",
          start: -1,
          end: -1,
          value: null,
          owner: null,
          debugStack: Error("react-stack-top-frame"),
          debugTask: console.createTask ? console.createTask("lazy()") : null
        };
      ctor._ioInfo = ioInfo;
      lazyType._debugInfo = [{ awaited: ioInfo }];
      return lazyType;
    };
    exports.memo = function (type, compare) {
      null == type &&
        console.error(
          "memo: The first argument must be a component. Instead received: %s",
          null === type ? "null" : typeof type
        );
      compare = {
        $$typeof: REACT_MEMO_TYPE,
        type: type,
        compare: void 0 === compare ? null : compare
      };
      var ownName;
      Object.defineProperty(compare, "displayName", {
        enumerable: !1,
        configurable: !0,
        get: function () {
          return ownName;
        },
        set: function (name) {
          ownName = name;
          type.name ||
            type.displayName ||
            (Object.defineProperty(type, "name", { value: name }),
            (type.displayName = name));
        }
      });
      return compare;
    };
    exports.startTransition = function (scope) {
      var prevTransition = ReactSharedInternals.T,
        currentTransition = {};
      currentTransition._updatedFibers = new Set();
      ReactSharedInternals.T = currentTransition;
      try {
        var returnValue = scope(),
          onStartTransitionFinish = ReactSharedInternals.S;
        null !== onStartTransitionFinish &&
          onStartTransitionFinish(currentTransition, returnValue);
        "object" === typeof returnValue &&
          null !== returnValue &&
          "function" === typeof returnValue.then &&
          (ReactSharedInternals.asyncTransitions++,
          returnValue.then(releaseAsyncTransition, releaseAsyncTransition),
          returnValue.then(noop, reportGlobalError));
      } catch (error) {
        reportGlobalError(error);
      } finally {
        null === prevTransition &&
          currentTransition._updatedFibers &&
          ((scope = currentTransition._updatedFibers.size),
          currentTransition._updatedFibers.clear(),
          10 < scope &&
            console.warn(
              "Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."
            )),
          null !== prevTransition &&
            null !== currentTransition.types &&
            (null !== prevTransition.types &&
              prevTransition.types !== currentTransition.types &&
              console.error(
                "We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."
              ),
            (prevTransition.types = currentTransition.types)),
          (ReactSharedInternals.T = prevTransition);
      }
    };
    exports.unstable_useCacheRefresh = function () {
      return resolveDispatcher().useCacheRefresh();
    };
    exports.use = function (usable) {
      return resolveDispatcher().use(usable);
    };
    exports.useActionState = function (action, initialState, permalink) {
      return resolveDispatcher().useActionState(
        action,
        initialState,
        permalink
      );
    };
    exports.useCallback = function (callback, deps) {
      return resolveDispatcher().useCallback(callback, deps);
    };
    exports.useContext = function (Context) {
      var dispatcher = resolveDispatcher();
      Context.$$typeof === REACT_CONSUMER_TYPE &&
        console.error(
          "Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?"
        );
      return dispatcher.useContext(Context);
    };
    exports.useDebugValue = function (value, formatterFn) {
      return resolveDispatcher().useDebugValue(value, formatterFn);
    };
    exports.useDeferredValue = function (value, initialValue) {
      return resolveDispatcher().useDeferredValue(value, initialValue);
    };
    exports.useEffect = function (create, deps) {
      null == create &&
        console.warn(
          "React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?"
        );
      return resolveDispatcher().useEffect(create, deps);
    };
    exports.useEffectEvent = function (callback) {
      return resolveDispatcher().useEffectEvent(callback);
    };
    exports.useId = function () {
      return resolveDispatcher().useId();
    };
    exports.useImperativeHandle = function (ref, create, deps) {
      return resolveDispatcher().useImperativeHandle(ref, create, deps);
    };
    exports.useInsertionEffect = function (create, deps) {
      null == create &&
        console.warn(
          "React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?"
        );
      return resolveDispatcher().useInsertionEffect(create, deps);
    };
    exports.useLayoutEffect = function (create, deps) {
      null == create &&
        console.warn(
          "React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?"
        );
      return resolveDispatcher().useLayoutEffect(create, deps);
    };
    exports.useMemo = function (create, deps) {
      return resolveDispatcher().useMemo(create, deps);
    };
    exports.useOptimistic = function (passthrough, reducer) {
      return resolveDispatcher().useOptimistic(passthrough, reducer);
    };
    exports.useReducer = function (reducer, initialArg, init) {
      return resolveDispatcher().useReducer(reducer, initialArg, init);
    };
    exports.useRef = function (initialValue) {
      return resolveDispatcher().useRef(initialValue);
    };
    exports.useState = function (initialState) {
      return resolveDispatcher().useState(initialState);
    };
    exports.useSyncExternalStore = function (
      subscribe,
      getSnapshot,
      getServerSnapshot
    ) {
      return resolveDispatcher().useSyncExternalStore(
        subscribe,
        getSnapshot,
        getServerSnapshot
      );
    };
    exports.useTransition = function () {
      return resolveDispatcher().useTransition();
    };
    exports.version = "19.2.0";
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
  })();


/***/ }),

/***/ "./node_modules/react/index.js":
/*!*************************************!*\
  !*** ./node_modules/react/index.js ***!
  \*************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


if (false) // removed by dead control flow
{} else {
  module.exports = __webpack_require__(/*! ./cjs/react.development.js */ "./node_modules/react/cjs/react.development.js");
}


/***/ }),

/***/ "./node_modules/scheduler/cjs/scheduler.development.js":
/*!*************************************************************!*\
  !*** ./node_modules/scheduler/cjs/scheduler.development.js ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, exports) => {

"use strict";
/**
 * @license React
 * scheduler.development.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.
 */


 true &&
  (function () {
    function performWorkUntilDeadline() {
      needsPaint = !1;
      if (isMessageLoopRunning) {
        var currentTime = exports.unstable_now();
        startTime = currentTime;
        var hasMoreWork = !0;
        try {
          a: {
            isHostCallbackScheduled = !1;
            isHostTimeoutScheduled &&
              ((isHostTimeoutScheduled = !1),
              localClearTimeout(taskTimeoutID),
              (taskTimeoutID = -1));
            isPerformingWork = !0;
            var previousPriorityLevel = currentPriorityLevel;
            try {
              b: {
                advanceTimers(currentTime);
                for (
                  currentTask = peek(taskQueue);
                  null !== currentTask &&
                  !(
                    currentTask.expirationTime > currentTime &&
                    shouldYieldToHost()
                  );

                ) {
                  var callback = currentTask.callback;
                  if ("function" === typeof callback) {
                    currentTask.callback = null;
                    currentPriorityLevel = currentTask.priorityLevel;
                    var continuationCallback = callback(
                      currentTask.expirationTime <= currentTime
                    );
                    currentTime = exports.unstable_now();
                    if ("function" === typeof continuationCallback) {
                      currentTask.callback = continuationCallback;
                      advanceTimers(currentTime);
                      hasMoreWork = !0;
                      break b;
                    }
                    currentTask === peek(taskQueue) && pop(taskQueue);
                    advanceTimers(currentTime);
                  } else pop(taskQueue);
                  currentTask = peek(taskQueue);
                }
                if (null !== currentTask) hasMoreWork = !0;
                else {
                  var firstTimer = peek(timerQueue);
                  null !== firstTimer &&
                    requestHostTimeout(
                      handleTimeout,
                      firstTimer.startTime - currentTime
                    );
                  hasMoreWork = !1;
                }
              }
              break a;
            } finally {
              (currentTask = null),
                (currentPriorityLevel = previousPriorityLevel),
                (isPerformingWork = !1);
            }
            hasMoreWork = void 0;
          }
        } finally {
          hasMoreWork
            ? schedulePerformWorkUntilDeadline()
            : (isMessageLoopRunning = !1);
        }
      }
    }
    function push(heap, node) {
      var index = heap.length;
      heap.push(node);
      a: for (; 0 < index; ) {
        var parentIndex = (index - 1) >>> 1,
          parent = heap[parentIndex];
        if (0 < compare(parent, node))
          (heap[parentIndex] = node),
            (heap[index] = parent),
            (index = parentIndex);
        else break a;
      }
    }
    function peek(heap) {
      return 0 === heap.length ? null : heap[0];
    }
    function pop(heap) {
      if (0 === heap.length) return null;
      var first = heap[0],
        last = heap.pop();
      if (last !== first) {
        heap[0] = last;
        a: for (
          var index = 0, length = heap.length, halfLength = length >>> 1;
          index < halfLength;

        ) {
          var leftIndex = 2 * (index + 1) - 1,
            left = heap[leftIndex],
            rightIndex = leftIndex + 1,
            right = heap[rightIndex];
          if (0 > compare(left, last))
            rightIndex < length && 0 > compare(right, left)
              ? ((heap[index] = right),
                (heap[rightIndex] = last),
                (index = rightIndex))
              : ((heap[index] = left),
                (heap[leftIndex] = last),
                (index = leftIndex));
          else if (rightIndex < length && 0 > compare(right, last))
            (heap[index] = right),
              (heap[rightIndex] = last),
              (index = rightIndex);
          else break a;
        }
      }
      return first;
    }
    function compare(a, b) {
      var diff = a.sortIndex - b.sortIndex;
      return 0 !== diff ? diff : a.id - b.id;
    }
    function advanceTimers(currentTime) {
      for (var timer = peek(timerQueue); null !== timer; ) {
        if (null === timer.callback) pop(timerQueue);
        else if (timer.startTime <= currentTime)
          pop(timerQueue),
            (timer.sortIndex = timer.expirationTime),
            push(taskQueue, timer);
        else break;
        timer = peek(timerQueue);
      }
    }
    function handleTimeout(currentTime) {
      isHostTimeoutScheduled = !1;
      advanceTimers(currentTime);
      if (!isHostCallbackScheduled)
        if (null !== peek(taskQueue))
          (isHostCallbackScheduled = !0),
            isMessageLoopRunning ||
              ((isMessageLoopRunning = !0), schedulePerformWorkUntilDeadline());
        else {
          var firstTimer = peek(timerQueue);
          null !== firstTimer &&
            requestHostTimeout(
              handleTimeout,
              firstTimer.startTime - currentTime
            );
        }
    }
    function shouldYieldToHost() {
      return needsPaint
        ? !0
        : exports.unstable_now() - startTime < frameInterval
          ? !1
          : !0;
    }
    function requestHostTimeout(callback, ms) {
      taskTimeoutID = localSetTimeout(function () {
        callback(exports.unstable_now());
      }, ms);
    }
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());
    exports.unstable_now = void 0;
    if (
      "object" === typeof performance &&
      "function" === typeof performance.now
    ) {
      var localPerformance = performance;
      exports.unstable_now = function () {
        return localPerformance.now();
      };
    } else {
      var localDate = Date,
        initialTime = localDate.now();
      exports.unstable_now = function () {
        return localDate.now() - initialTime;
      };
    }
    var taskQueue = [],
      timerQueue = [],
      taskIdCounter = 1,
      currentTask = null,
      currentPriorityLevel = 3,
      isPerformingWork = !1,
      isHostCallbackScheduled = !1,
      isHostTimeoutScheduled = !1,
      needsPaint = !1,
      localSetTimeout = "function" === typeof setTimeout ? setTimeout : null,
      localClearTimeout =
        "function" === typeof clearTimeout ? clearTimeout : null,
      localSetImmediate =
        "undefined" !== typeof setImmediate ? setImmediate : null,
      isMessageLoopRunning = !1,
      taskTimeoutID = -1,
      frameInterval = 5,
      startTime = -1;
    if ("function" === typeof localSetImmediate)
      var schedulePerformWorkUntilDeadline = function () {
        localSetImmediate(performWorkUntilDeadline);
      };
    else if ("undefined" !== typeof MessageChannel) {
      var channel = new MessageChannel(),
        port = channel.port2;
      channel.port1.onmessage = performWorkUntilDeadline;
      schedulePerformWorkUntilDeadline = function () {
        port.postMessage(null);
      };
    } else
      schedulePerformWorkUntilDeadline = function () {
        localSetTimeout(performWorkUntilDeadline, 0);
      };
    exports.unstable_IdlePriority = 5;
    exports.unstable_ImmediatePriority = 1;
    exports.unstable_LowPriority = 4;
    exports.unstable_NormalPriority = 3;
    exports.unstable_Profiling = null;
    exports.unstable_UserBlockingPriority = 2;
    exports.unstable_cancelCallback = function (task) {
      task.callback = null;
    };
    exports.unstable_forceFrameRate = function (fps) {
      0 > fps || 125 < fps
        ? console.error(
            "forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"
          )
        : (frameInterval = 0 < fps ? Math.floor(1e3 / fps) : 5);
    };
    exports.unstable_getCurrentPriorityLevel = function () {
      return currentPriorityLevel;
    };
    exports.unstable_next = function (eventHandler) {
      switch (currentPriorityLevel) {
        case 1:
        case 2:
        case 3:
          var priorityLevel = 3;
          break;
        default:
          priorityLevel = currentPriorityLevel;
      }
      var previousPriorityLevel = currentPriorityLevel;
      currentPriorityLevel = priorityLevel;
      try {
        return eventHandler();
      } finally {
        currentPriorityLevel = previousPriorityLevel;
      }
    };
    exports.unstable_requestPaint = function () {
      needsPaint = !0;
    };
    exports.unstable_runWithPriority = function (priorityLevel, eventHandler) {
      switch (priorityLevel) {
        case 1:
        case 2:
        case 3:
        case 4:
        case 5:
          break;
        default:
          priorityLevel = 3;
      }
      var previousPriorityLevel = currentPriorityLevel;
      currentPriorityLevel = priorityLevel;
      try {
        return eventHandler();
      } finally {
        currentPriorityLevel = previousPriorityLevel;
      }
    };
    exports.unstable_scheduleCallback = function (
      priorityLevel,
      callback,
      options
    ) {
      var currentTime = exports.unstable_now();
      "object" === typeof options && null !== options
        ? ((options = options.delay),
          (options =
            "number" === typeof options && 0 < options
              ? currentTime + options
              : currentTime))
        : (options = currentTime);
      switch (priorityLevel) {
        case 1:
          var timeout = -1;
          break;
        case 2:
          timeout = 250;
          break;
        case 5:
          timeout = 1073741823;
          break;
        case 4:
          timeout = 1e4;
          break;
        default:
          timeout = 5e3;
      }
      timeout = options + timeout;
      priorityLevel = {
        id: taskIdCounter++,
        callback: callback,
        priorityLevel: priorityLevel,
        startTime: options,
        expirationTime: timeout,
        sortIndex: -1
      };
      options > currentTime
        ? ((priorityLevel.sortIndex = options),
          push(timerQueue, priorityLevel),
          null === peek(taskQueue) &&
            priorityLevel === peek(timerQueue) &&
            (isHostTimeoutScheduled
              ? (localClearTimeout(taskTimeoutID), (taskTimeoutID = -1))
              : (isHostTimeoutScheduled = !0),
            requestHostTimeout(handleTimeout, options - currentTime)))
        : ((priorityLevel.sortIndex = timeout),
          push(taskQueue, priorityLevel),
          isHostCallbackScheduled ||
            isPerformingWork ||
            ((isHostCallbackScheduled = !0),
            isMessageLoopRunning ||
              ((isMessageLoopRunning = !0),
              schedulePerformWorkUntilDeadline())));
      return priorityLevel;
    };
    exports.unstable_shouldYield = shouldYieldToHost;
    exports.unstable_wrapCallback = function (callback) {
      var parentPriorityLevel = currentPriorityLevel;
      return function () {
        var previousPriorityLevel = currentPriorityLevel;
        currentPriorityLevel = parentPriorityLevel;
        try {
          return callback.apply(this, arguments);
        } finally {
          currentPriorityLevel = previousPriorityLevel;
        }
      };
    };
    "undefined" !== typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ &&
      "function" ===
        typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop &&
      __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error());
  })();


/***/ }),

/***/ "./node_modules/scheduler/index.js":
/*!*****************************************!*\
  !*** ./node_modules/scheduler/index.js ***!
  \*****************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


if (false) // removed by dead control flow
{} else {
  module.exports = __webpack_require__(/*! ./cjs/scheduler.development.js */ "./node_modules/scheduler/cjs/scheduler.development.js");
}


/***/ }),

/***/ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js":
/*!****************************************************************************!*\
  !*** ./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js ***!
  \****************************************************************************/
/***/ ((module) => {

"use strict";


var stylesInDOM = [];
function getIndexByIdentifier(identifier) {
  var result = -1;
  for (var i = 0; i < stylesInDOM.length; i++) {
    if (stylesInDOM[i].identifier === identifier) {
      result = i;
      break;
    }
  }
  return result;
}
function modulesToDom(list, options) {
  var idCountMap = {};
  var identifiers = [];
  for (var i = 0; i < list.length; i++) {
    var item = list[i];
    var id = options.base ? item[0] + options.base : item[0];
    var count = idCountMap[id] || 0;
    var identifier = "".concat(id, " ").concat(count);
    idCountMap[id] = count + 1;
    var indexByIdentifier = getIndexByIdentifier(identifier);
    var obj = {
      css: item[1],
      media: item[2],
      sourceMap: item[3],
      supports: item[4],
      layer: item[5]
    };
    if (indexByIdentifier !== -1) {
      stylesInDOM[indexByIdentifier].references++;
      stylesInDOM[indexByIdentifier].updater(obj);
    } else {
      var updater = addElementStyle(obj, options);
      options.byIndex = i;
      stylesInDOM.splice(i, 0, {
        identifier: identifier,
        updater: updater,
        references: 1
      });
    }
    identifiers.push(identifier);
  }
  return identifiers;
}
function addElementStyle(obj, options) {
  var api = options.domAPI(options);
  api.update(obj);
  var updater = function updater(newObj) {
    if (newObj) {
      if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {
        return;
      }
      api.update(obj = newObj);
    } else {
      api.remove();
    }
  };
  return updater;
}
module.exports = function (list, options) {
  options = options || {};
  list = list || [];
  var lastIdentifiers = modulesToDom(list, options);
  return function update(newList) {
    newList = newList || [];
    for (var i = 0; i < lastIdentifiers.length; i++) {
      var identifier = lastIdentifiers[i];
      var index = getIndexByIdentifier(identifier);
      stylesInDOM[index].references--;
    }
    var newLastIdentifiers = modulesToDom(newList, options);
    for (var _i = 0; _i < lastIdentifiers.length; _i++) {
      var _identifier = lastIdentifiers[_i];
      var _index = getIndexByIdentifier(_identifier);
      if (stylesInDOM[_index].references === 0) {
        stylesInDOM[_index].updater();
        stylesInDOM.splice(_index, 1);
      }
    }
    lastIdentifiers = newLastIdentifiers;
  };
};

/***/ }),

/***/ "./node_modules/style-loader/dist/runtime/insertBySelector.js":
/*!********************************************************************!*\
  !*** ./node_modules/style-loader/dist/runtime/insertBySelector.js ***!
  \********************************************************************/
/***/ ((module) => {

"use strict";


var memo = {};

/* istanbul ignore next  */
function getTarget(target) {
  if (typeof memo[target] === "undefined") {
    var styleTarget = document.querySelector(target);

    // Special case to return head of iframe instead of iframe itself
    if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {
      try {
        // This will throw an exception if access to iframe is blocked
        // due to cross-origin restrictions
        styleTarget = styleTarget.contentDocument.head;
      } catch (e) {
        // istanbul ignore next
        styleTarget = null;
      }
    }
    memo[target] = styleTarget;
  }
  return memo[target];
}

/* istanbul ignore next  */
function insertBySelector(insert, style) {
  var target = getTarget(insert);
  if (!target) {
    throw new Error("Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.");
  }
  target.appendChild(style);
}
module.exports = insertBySelector;

/***/ }),

/***/ "./node_modules/style-loader/dist/runtime/insertStyleElement.js":
/*!**********************************************************************!*\
  !*** ./node_modules/style-loader/dist/runtime/insertStyleElement.js ***!
  \**********************************************************************/
/***/ ((module) => {

"use strict";


/* istanbul ignore next  */
function insertStyleElement(options) {
  var element = document.createElement("style");
  options.setAttributes(element, options.attributes);
  options.insert(element, options.options);
  return element;
}
module.exports = insertStyleElement;

/***/ }),

/***/ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js":
/*!**********************************************************************************!*\
  !*** ./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js ***!
  \**********************************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";


/* istanbul ignore next  */
function setAttributesWithoutAttributes(styleElement) {
  var nonce =  true ? __webpack_require__.nc : 0;
  if (nonce) {
    styleElement.setAttribute("nonce", nonce);
  }
}
module.exports = setAttributesWithoutAttributes;

/***/ }),

/***/ "./node_modules/style-loader/dist/runtime/styleDomAPI.js":
/*!***************************************************************!*\
  !*** ./node_modules/style-loader/dist/runtime/styleDomAPI.js ***!
  \***************************************************************/
/***/ ((module) => {

"use strict";


/* istanbul ignore next  */
function apply(styleElement, options, obj) {
  var css = "";
  if (obj.supports) {
    css += "@supports (".concat(obj.supports, ") {");
  }
  if (obj.media) {
    css += "@media ".concat(obj.media, " {");
  }
  var needLayer = typeof obj.layer !== "undefined";
  if (needLayer) {
    css += "@layer".concat(obj.layer.length > 0 ? " ".concat(obj.layer) : "", " {");
  }
  css += obj.css;
  if (needLayer) {
    css += "}";
  }
  if (obj.media) {
    css += "}";
  }
  if (obj.supports) {
    css += "}";
  }
  var sourceMap = obj.sourceMap;
  if (sourceMap && typeof btoa !== "undefined") {
    css += "\n/*# sourceMappingURL=data:application/json;base64,".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), " */");
  }

  // For old IE
  /* istanbul ignore if  */
  options.styleTagTransform(css, styleElement, options.options);
}
function removeStyleElement(styleElement) {
  // istanbul ignore if
  if (styleElement.parentNode === null) {
    return false;
  }
  styleElement.parentNode.removeChild(styleElement);
}

/* istanbul ignore next  */
function domAPI(options) {
  if (typeof document === "undefined") {
    return {
      update: function update() {},
      remove: function remove() {}
    };
  }
  var styleElement = options.insertStyleElement(options);
  return {
    update: function update(obj) {
      apply(styleElement, options, obj);
    },
    remove: function remove() {
      removeStyleElement(styleElement);
    }
  };
}
module.exports = domAPI;

/***/ }),

/***/ "./node_modules/style-loader/dist/runtime/styleTagTransform.js":
/*!*********************************************************************!*\
  !*** ./node_modules/style-loader/dist/runtime/styleTagTransform.js ***!
  \*********************************************************************/
/***/ ((module) => {

"use strict";


/* istanbul ignore next  */
function styleTagTransform(css, styleElement) {
  if (styleElement.styleSheet) {
    styleElement.styleSheet.cssText = css;
  } else {
    while (styleElement.firstChild) {
      styleElement.removeChild(styleElement.firstChild);
    }
    styleElement.appendChild(document.createTextNode(css));
  }
}
module.exports = styleTagTransform;

/***/ }),

/***/ "./src/common/browserApi.js":
/*!**********************************!*\
  !*** ./src/common/browserApi.js ***!
  \**********************************/
/***/ ((module) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
var BrowserApi = /*#__PURE__*/function () {
  function BrowserApi() {
    var _this = this;
    _classCallCheck(this, BrowserApi);
    _defineProperty(this, "isFireFoxBrowser", function () {
      return _this.isFirefox;
    });
    var api = null;
    if (typeof browser !== 'undefined' && browser.runtime && browser.runtime.sendMessage) {
      api = browser;
    } else if (typeof chrome !== 'undefined' && chrome.runtime && chrome.runtime.sendMessage) {
      api = chrome;
    } else {
      throw new Error('Browser API is not available');
    }
    if (!api || !api.runtime) {
      throw new Error('Browser API not available');
    }
    this._api = api;
    this.isFirefox = typeof browser !== 'undefined' && browser.runtime && typeof browser.runtime.getBrowserInfo === 'function';
    this.runtime = this._api.runtime;
    this.storage = this._api.storage;
    this.proxy = this._api.proxy || undefined;
    this.webRequest = this._api.webRequest || undefined;
    this.webNavigation = this._api.webNavigation || undefined;
    this.notifications = this._api.notifications || undefined;
    this.tabs = this._api.tabs || undefined;
    this.windows = this._api.windows || undefined;
    this.privacy = this._api.privacy || undefined;
    this.action = typeof browser !== 'undefined' ? browser.action || browser.browserAction : chrome.action || chrome.browserAction;
    this.alarms = this._api.alarms || undefined;
    this.scripting = this._api.scripting || undefined;
    this.declarativeNetRequest = this._api.declarativeNetRequest || undefined;
    this.i18n = this._api.i18n || undefined;
    this.management = this._api.management || undefined;
    this.contextMenus = this._api.contextMenus || undefined;
    this.browsingData = this._api.browsingData || undefined;
    this.permissions = this._api.permissions || undefined;
  }
  return _createClass(BrowserApi, [{
    key: "getBrowser",
    value: function getBrowser() {
      if (this.isFirefox) return 'firefox';
      if (navigator.userAgent.includes('Edg')) return 'edge';
      return 'chrome';
    }
  }, {
    key: "registerProxyErrorListener",
    value: function registerProxyErrorListener(callback) {
      if (this.getBrowser() === 'chrome') {
        if (this.proxy && typeof this.proxy.onProxyError === 'function') {
          this.proxy.onProxyError.addListener(callback);
        }
      } else {
        if (this.webRequest && typeof this.webRequest.onErrorOccurred === 'function') {
          this.webRequest.onErrorOccurred.addListener(function (details) {
            if (details.error && (details.error.includes('NS_ERROR_PROXY') || details.error.includes('proxy'))) {
              callback({
                fatal: true,
                error: details.error
              });
            }
          }, {
            urls: ['<all_urls>']
          });
        }
      }
    }
  }]);
}();
var browserApi;
try {
  browserApi = new BrowserApi();
} catch (error) {
  throw error;
}
module.exports = browserApi;

/***/ }),

/***/ "./src/common/browser_storages/browser_storage.js":
/*!********************************************************!*\
  !*** ./src/common/browser_storages/browser_storage.js ***!
  \********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");

/**
 * Promisified browserApi.storage.local.get
 * @param {string | string[]} keys
 * @returns {Promise<Object>}
 */
var getStorageAsync = function getStorageAsync(keys) {
  return new Promise(function (resolve) {
    return browserApi.storage.local.get(keys, resolve);
  });
};

/**
 * Promisified browserApi.storage.local.set
 * @param {Object} data
 * @returns {Promise<void>}
 */
var setStorageAsync = function setStorageAsync(data) {
  return new Promise(function (resolve) {
    return browserApi.storage.local.set(data, resolve);
  });
};

/**
 * Promisified browserApi.storage.local.remove
 * @param {string | string[]} keys
 * @returns {Promise<void>}
 */
var removeStorageAsync = function removeStorageAsync(keys) {
  return new Promise(function (resolve) {
    return browserApi.storage.local.remove(keys, resolve);
  });
};

/**
 * Promisified browserApi.storage.local.get
 * @param {string | string[]} keys
 * @param {callback} callback
 * @returns {Promise<Object>}
 */
var getStorage = function getStorage(keys) {
  var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
  return browserApi.storage.local.get(keys, callback);
};

/**
 * Promisified browserApi.storage.local.set
 * @param {Object} data
 * @param {callback} callback
 * @returns {Promise<void>}
 */
var setStorage = function setStorage(data) {
  var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
  return browserApi.storage.local.set(data, callback);
};

/**
 * Non-promisified browserApi.storage.local.remove
 * @param {string | string[]} keys
 * @param {Function} callback
 */
var removeStorage = function removeStorage(keys) {
  var callback = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : function () {};
  return browserApi.storage.local.remove(keys, callback);
};
module.exports = {
  getStorage: getStorage,
  getStorageAsync: getStorageAsync,
  setStorage: setStorage,
  setStorageAsync: setStorageAsync,
  removeStorage: removeStorage,
  removeStorageAsync: removeStorageAsync
};

/***/ }),

/***/ "./src/common/functions/apiGatewaysForCity.js":
/*!****************************************************!*\
  !*** ./src/common/functions/apiGatewaysForCity.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   checkApiGatewayMain: () => (/* binding */ checkApiGatewayMain),
/* harmony export */   getApiGatewaysForCity: () => (/* binding */ getApiGatewaysForCity)
/* harmony export */ });
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
function getApiGatewaysForCity(_x, _x2) {
  return _getApiGatewaysForCity.apply(this, arguments);
}
function _getApiGatewaysForCity() {
  _getApiGatewaysForCity = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(cityInfo, isReconnect) {
    var apiGateways, sortedCityGateways, apiGatewayMain, apiGatewayForCity;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          _context.n = 1;
          return StorageService.getApiGateways();
        case 1:
          apiGateways = _context.v;
          if (!(!cityInfo || !cityInfo.api_gateways)) {
            _context.n = 3;
            break;
          }
          if (isReconnect) {
            _context.n = 2;
            break;
          }
          _context.n = 2;
          return checkApiGatewayMain();
        case 2:
          return _context.a(2, apiGateways);
        case 3:
          sortedCityGateways = cityInfo.api_gateways.sort(function (a, b) {
            var indexA = apiGateways.indexOf(a);
            var indexB = apiGateways.indexOf(b);
            if (indexA !== -1 && indexB !== -1) {
              return indexA - indexB;
            }
            if (indexA !== -1) return -1;
            if (indexB !== -1) return 1;
            return 0;
          });
          if (isReconnect) {
            _context.n = 6;
            break;
          }
          _context.n = 4;
          return StorageService.getApiGatewayMain();
        case 4:
          apiGatewayMain = _context.v;
          if (!(sortedCityGateways[0] && apiGatewayMain === sortedCityGateways[0])) {
            _context.n = 5;
            break;
          }
          return _context.a(2, sortedCityGateways);
        case 5:
          apiGatewayForCity = sortedCityGateways[0];
          _context.n = 6;
          return StorageService.saveApiGatewayMain(apiGatewayForCity);
        case 6:
          return _context.a(2, sortedCityGateways);
      }
    }, _callee);
  }));
  return _getApiGatewaysForCity.apply(this, arguments);
}
function checkApiGatewayMain() {
  return _checkApiGatewayMain.apply(this, arguments);
}
function _checkApiGatewayMain() {
  _checkApiGatewayMain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    var apiGateways, apiGatewayMain, settings;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          _context2.n = 1;
          return StorageService.getApiGateways();
        case 1:
          apiGateways = _context2.v;
          _context2.n = 2;
          return StorageService.getApiGatewayMain();
        case 2:
          apiGatewayMain = _context2.v;
          _context2.n = 3;
          return StorageService.getSettings();
        case 3:
          settings = _context2.v;
          if (!(settings && settings.changeApiGateway && settings.selectedApiGateway)) {
            _context2.n = 5;
            break;
          }
          _context2.n = 4;
          return StorageService.saveApiGatewayMain(settings.selectedApiGateway);
        case 4:
          return _context2.a(2);
        case 5:
          if (!(apiGateways[0] && apiGatewayMain !== apiGateways[0])) {
            _context2.n = 6;
            break;
          }
          _context2.n = 6;
          return StorageService.saveApiGatewayMain(apiGateways[0]);
        case 6:
          return _context2.a(2);
      }
    }, _callee2);
  }));
  return _checkApiGatewayMain.apply(this, arguments);
}

/***/ }),

/***/ "./src/common/functions/checkApiGatewaysReconnect.js":
/*!***********************************************************!*\
  !*** ./src/common/functions/checkApiGatewaysReconnect.js ***!
  \***********************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var config = __webpack_require__(/*! ../../../config */ "./config.js");
function selectNextApiGatewayMain() {
  return _selectNextApiGatewayMain.apply(this, arguments);
}
function _selectNextApiGatewayMain() {
  _selectNextApiGatewayMain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var apiGatewaysForCity,
      apiGatewayMain,
      isExistApiGatewaysForCity,
      apiGateways,
      index,
      apiGatewayMainNew,
      _args = arguments,
      _t,
      _t2;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          apiGatewaysForCity = _args.length > 0 && _args[0] !== undefined ? _args[0] : [];
          apiGatewayMain = _args.length > 1 && _args[1] !== undefined ? _args[1] : '';
          _context.n = 1;
          return StorageService.getIsApiGatewayMainAfterCheck();
        case 1:
          if (!_context.v) {
            _context.n = 2;
            break;
          }
          return _context.a(2, false);
        case 2:
          isExistApiGatewaysForCity = apiGatewaysForCity && apiGatewaysForCity.length;
          if (!apiGatewayMain) {
            _context.n = 3;
            break;
          }
          _t = apiGatewayMain;
          _context.n = 5;
          break;
        case 3:
          _context.n = 4;
          return StorageService.getApiGatewayMain();
        case 4:
          _t = _context.v;
        case 5:
          apiGatewayMain = _t;
          if (!isExistApiGatewaysForCity) {
            _context.n = 6;
            break;
          }
          _t2 = apiGatewaysForCity;
          _context.n = 8;
          break;
        case 6:
          _context.n = 7;
          return StorageService.getApiGateways();
        case 7:
          _t2 = _context.v;
        case 8:
          apiGateways = _t2;
          _context.n = 9;
          return checkApiGatewaysReconnect(apiGateways, apiGatewayMain);
        case 9:
          if (_context.v) {
            _context.n = 10;
            break;
          }
          return _context.a(2, false);
        case 10:
          _context.n = 11;
          return StorageService.getIsApiGatewayMainAfterCheck();
        case 11:
          if (!_context.v) {
            _context.n = 12;
            break;
          }
          return _context.a(2, true);
        case 12:
          if (!(apiGateways && apiGateways.length)) {
            _context.n = 15;
            break;
          }
          index = apiGateways.indexOf(apiGatewayMain) + 1;
          if (!(apiGateways.length <= apiGateways.indexOf(apiGatewayMain) + 1)) {
            _context.n = 13;
            break;
          }
          return _context.a(2, false);
        case 13:
          apiGatewayMainNew = apiGateways[index];
          if (!apiGatewayMainNew) {
            _context.n = 15;
            break;
          }
          _context.n = 14;
          return StorageService.saveApiGatewayMain(apiGatewayMainNew);
        case 14:
          return _context.a(2, true);
        case 15:
          return _context.a(2, false);
      }
    }, _callee);
  }));
  return _selectNextApiGatewayMain.apply(this, arguments);
}
function checkApiGatewaysReconnect(_x, _x2) {
  return _checkApiGatewaysReconnect.apply(this, arguments);
}
function _checkApiGatewaysReconnect() {
  _checkApiGatewaysReconnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(apiGateways, apiGatewayMain) {
    var startIndex, endIndex, apiGatewayMainNew;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          startIndex = apiGateways.indexOf(apiGatewayMain) >= 0 ? apiGateways.indexOf(apiGatewayMain) + 1 : 0;
          endIndex = config.MAX_GATEWAYS_TO_CHECK;
          if (!(startIndex >= endIndex)) {
            _context2.n = 6;
            break;
          }
          _context2.n = 1;
          return StorageService.getApiGateways();
        case 1:
          apiGateways = _context2.v;
          if (apiGateways) {
            _context2.n = 2;
            break;
          }
          return _context2.a(2, false);
        case 2:
          apiGatewayMainNew = apiGateways[0];
          if (!apiGatewayMainNew) {
            _context2.n = 5;
            break;
          }
          _context2.n = 3;
          return StorageService.saveIsApiGatewayMainAfterCheck(true);
        case 3:
          _context2.n = 4;
          return StorageService.saveApiGatewayMain(apiGatewayMainNew);
        case 4:
          return _context2.a(2, true);
        case 5:
          return _context2.a(2, false);
        case 6:
          return _context2.a(2, true);
      }
    }, _callee2);
  }));
  return _checkApiGatewaysReconnect.apply(this, arguments);
}
module.exports = {
  selectNextApiGatewayMain: selectNextApiGatewayMain
};

/***/ }),

/***/ "./src/common/functions/checkDomains.js":
/*!**********************************************!*\
  !*** ./src/common/functions/checkDomains.js ***!
  \**********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   checkDomains: () => (/* binding */ checkDomains)
/* harmony export */ });
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_services_ApiClient__WEBPACK_IMPORTED_MODULE_1__);
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }


function checkDomains() {
  return _checkDomains.apply(this, arguments);
}
function _checkDomains() {
  _checkDomains = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var domain;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          _context.n = 1;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getApiGatewayMain();
        case 1:
          domain = _context.v;
          if (domain) {
            _context.n = 2;
            break;
          }
          _context.n = 2;
          return _services_ApiClient__WEBPACK_IMPORTED_MODULE_1___default().getApiGateways();
        case 2:
          return _context.a(2);
      }
    }, _callee);
  }));
  return _checkDomains.apply(this, arguments);
}

/***/ }),

/***/ "./src/common/functions/checkSubscriptions.js":
/*!****************************************************!*\
  !*** ./src/common/functions/checkSubscriptions.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   checkSubscriptionStatus: () => (/* binding */ checkSubscriptionStatus),
/* harmony export */   getSubscriptionStatus: () => (/* binding */ getSubscriptionStatus),
/* harmony export */   initSubscriptionChecker: () => (/* binding */ initSubscriptionChecker),
/* harmony export */   updateSubscriptionData: () => (/* binding */ updateSubscriptionData),
/* harmony export */   updateSubscriptionOnce: () => (/* binding */ updateSubscriptionOnce)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_services_ApiClient__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
/* harmony import */ var _sw_tools_proxy_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @sw/tools/proxy_utils */ "./src/sw/tools/proxy_utils.js");
/* harmony import */ var _sw_tools_proxy_utils__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_sw_tools_proxy_utils__WEBPACK_IMPORTED_MODULE_6__);
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }







var subscriptionTimeout = null;
var subscriptionRetryInterval = null;
var MAX_TIMEOUT_MS = 2147483647;
function getSubscriptionStatus(subscriptionDate) {
  var isRecurring = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
  var isTrial = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  if (isTrial && !subscriptionDate) {
    return '';
  }
  if (!subscriptionDate) {
    return t('subscription_expired');
  }
  var date = new Date();
  var subscription = new Date(subscriptionDate);
  var currentDate = new Date(date.getTime() - date.getTimezoneOffset() * 60000);
  if (subscription <= currentDate) {
    return t('subscription_expired');
  }
  var timeDiff = subscription - currentDate;
  var daysDiff = Math.floor(timeDiff / (1000 * 60 * 60 * 24));
  if (!isRecurring && daysDiff <= 3) {
    if (daysDiff === 0) {
      return t('expires_today');
    }
    if (daysDiff === 1) {
      return t('expires_tomorrow');
    }
    return t('expires_in_days').replace('{day}', daysDiff);
  }
  return '';
}
function checkSubscriptionStatus(subscriptionDate) {
  if (!subscriptionDate) {
    return false;
  }
  var currentDate = new Date();
  var subscription = new Date(subscriptionDate);
  return subscription > currentDate;
}
function initSubscriptionChecker() {
  return _initSubscriptionChecker.apply(this, arguments);
}
function _initSubscriptionChecker() {
  _initSubscriptionChecker = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
    var _userData$subscriptio, userData, subscriptionExpDate, now, exp, diffMs, _t;
    return _regenerator().w(function (_context4) {
      while (1) switch (_context4.p = _context4.n) {
        case 0:
          _context4.p = 0;
          _context4.n = 1;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default().getUserData();
        case 1:
          userData = _context4.v;
          subscriptionExpDate = userData === null || userData === void 0 || (_userData$subscriptio = userData.subscription_info) === null || _userData$subscriptio === void 0 ? void 0 : _userData$subscriptio.subscription_exp_date;
          now = new Date();
          exp = subscriptionExpDate ? new Date(subscriptionExpDate) : new Date();
          diffMs = exp - now;
          if (!(diffMs <= 0)) {
            _context4.n = 2;
            break;
          }
          if (subscriptionTimeout) clearTimeout(subscriptionTimeout);
          if (subscriptionRetryInterval) clearInterval(subscriptionRetryInterval);
          return _context4.a(2);
        case 2:
          if (subscriptionTimeout) clearTimeout(subscriptionTimeout);
          if (!(diffMs > MAX_TIMEOUT_MS)) {
            _context4.n = 3;
            break;
          }
          subscriptionTimeout = setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
            return _regenerator().w(function (_context) {
              while (1) switch (_context.n) {
                case 0:
                  _context.n = 1;
                  return initSubscriptionChecker();
                case 1:
                  return _context.a(2);
              }
            }, _callee);
          })), MAX_TIMEOUT_MS);
          return _context4.a(2);
        case 3:
          if (subscriptionTimeout) clearTimeout(subscriptionTimeout);
          subscriptionTimeout = setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
            var isUpdated;
            return _regenerator().w(function (_context3) {
              while (1) switch (_context3.n) {
                case 0:
                  _context3.n = 1;
                  return updateSubscriptionOnce();
                case 1:
                  isUpdated = _context3.v;
                  if (isUpdated) {
                    _context3.n = 2;
                    break;
                  }
                  if (subscriptionRetryInterval) clearInterval(subscriptionRetryInterval);
                  subscriptionRetryInterval = setInterval(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
                    var retryUpdated;
                    return _regenerator().w(function (_context2) {
                      while (1) switch (_context2.n) {
                        case 0:
                          _context2.n = 1;
                          return updateSubscriptionOnce();
                        case 1:
                          retryUpdated = _context2.v;
                          if (retryUpdated) {
                            clearInterval(subscriptionRetryInterval);
                            subscriptionRetryInterval = null;
                          }
                        case 2:
                          return _context2.a(2);
                      }
                    }, _callee2);
                  })), 60 * 1000);
                  _context3.n = 3;
                  break;
                case 2:
                  _context3.n = 3;
                  return initSubscriptionChecker();
                case 3:
                  return _context3.a(2);
              }
            }, _callee3);
          })), diffMs);
          _context4.n = 5;
          break;
        case 4:
          _context4.p = 4;
          _t = _context4.v;
          _context4.n = 5;
          return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addEvents('action.error_init_subscription_checker', _t);
        case 5:
          return _context4.a(2);
      }
    }, _callee4, null, [[0, 4]]);
  }));
  return _initSubscriptionChecker.apply(this, arguments);
}
function updateSubscriptionOnce() {
  return _updateSubscriptionOnce.apply(this, arguments);
}
function _updateSubscriptionOnce() {
  _updateSubscriptionOnce = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
    var _response$data, _newUserData$subscrip, token, response, newUserData, updatedExpDate, updatedHasActive, stillActive, proxyStatus, _t2;
    return _regenerator().w(function (_context5) {
      while (1) switch (_context5.p = _context5.n) {
        case 0:
          _context5.p = 0;
          _context5.n = 1;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default().getToken();
        case 1:
          token = _context5.v;
          _context5.n = 2;
          return _services_ApiClient__WEBPACK_IMPORTED_MODULE_3___default().validateTokenWithData(token);
        case 2:
          response = _context5.v;
          newUserData = response === null || response === void 0 || (_response$data = response.data) === null || _response$data === void 0 ? void 0 : _response$data.data;
          if (newUserData) {
            _context5.n = 3;
            break;
          }
          return _context5.a(2, false);
        case 3:
          _context5.n = 4;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default().saveUserData(newUserData);
        case 4:
          updatedExpDate = newUserData === null || newUserData === void 0 || (_newUserData$subscrip = newUserData.subscription_info) === null || _newUserData$subscrip === void 0 ? void 0 : _newUserData$subscrip.subscription_exp_date;
          updatedHasActive = newUserData === null || newUserData === void 0 ? void 0 : newUserData.has_active_subscription;
          stillActive = checkSubscriptionStatus(updatedExpDate);
          if (!(!updatedHasActive || !stillActive)) {
            _context5.n = 7;
            break;
          }
          _context5.n = 5;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default().getProxyStatus();
        case 5:
          proxyStatus = _context5.v;
          if (!(proxyStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_5__.PROXY_STATUSES.CONNECT)) {
            _context5.n = 7;
            break;
          }
          _context5.n = 6;
          return (0,_sw_tools_proxy_utils__WEBPACK_IMPORTED_MODULE_6__.handleDisconnect)(function () {});
        case 6:
          _context5.n = 7;
          return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addEvents('action.disconnect_by_subscription_expired');
        case 7:
          return _context5.a(2, true);
        case 8:
          _context5.p = 8;
          _t2 = _context5.v;
          _context5.n = 9;
          return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addEvents('action.error_updating_subscription', _t2);
        case 9:
          return _context5.a(2, false);
      }
    }, _callee5, null, [[0, 8]]);
  }));
  return _updateSubscriptionOnce.apply(this, arguments);
}
function updateSubscriptionData() {
  return _updateSubscriptionData.apply(this, arguments);
}
function _updateSubscriptionData() {
  _updateSubscriptionData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() {
    var subscriptionExpDate,
      userData,
      subscription_info,
      subscriptionInfo,
      newSubscriptionInfo,
      _args6 = arguments;
    return _regenerator().w(function (_context6) {
      while (1) switch (_context6.n) {
        case 0:
          subscriptionExpDate = _args6.length > 0 && _args6[0] !== undefined ? _args6[0] : '';
          _context6.n = 1;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default().getUserData();
        case 1:
          userData = _context6.v;
          if (checkSubscriptionStatus(subscriptionExpDate)) {
            _context6.n = 3;
            break;
          }
          subscription_info = {
            is_recurring: false,
            max_connection: 0,
            subscription_exp_date: ""
          };
          _context6.n = 2;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default().saveUserData(_objectSpread(_objectSpread({}, userData), {}, {
            has_active_subscription: false,
            subscription_info: subscription_info
          }));
        case 2:
          return _context6.a(2);
        case 3:
          subscriptionInfo = userData === null || userData === void 0 ? void 0 : userData.subscription_info;
          newSubscriptionInfo = _objectSpread(_objectSpread({}, subscriptionInfo), {}, {
            subscription_exp_date: subscriptionExpDate
          });
          _context6.n = 4;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_2___default().saveUserData(_objectSpread(_objectSpread({}, userData), {}, {
            has_active_subscription: true,
            subscription_info: newSubscriptionInfo
          }));
        case 4:
          return _context6.a(2);
      }
    }, _callee6);
  }));
  return _updateSubscriptionData.apply(this, arguments);
}

/***/ }),

/***/ "./src/common/functions/executeScriptCompat.js":
/*!*****************************************************!*\
  !*** ./src/common/functions/executeScriptCompat.js ***!
  \*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
function executeScriptCompat(_ref, callback) {
  var tabId = _ref.tabId,
    _ref$func = _ref.func,
    func = _ref$func === void 0 ? null : _ref$func,
    _ref$code = _ref.code,
    code = _ref$code === void 0 ? null : _ref$code,
    _ref$args = _ref.args,
    args = _ref$args === void 0 ? [] : _ref$args,
    _ref$world = _ref.world,
    world = _ref$world === void 0 ? 'ISOLATED' : _ref$world;
  var maxRetries = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;
  var retryDelay = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1000;
  var isFirefox = browserApi.isFireFoxBrowser();
  var checkFrameStatus = function checkFrameStatus() {
    return new Promise(function (resolve, reject) {
      browserApi.webNavigation.getAllFrames({
        tabId: tabId
      }, function (frames) {
        if (browserApi.runtime.lastError) {
          reject(new Error("Failed to get frames for tab ".concat(tabId, ": ").concat(browserApi.runtime.lastError.message)));
          return;
        }
        var mainFrame = frames.find(function (frame) {
          return frame.frameId === 0;
        });
        if (!mainFrame) {
          reject(new Error("Main frame (ID 0) not found for tab ".concat(tabId)));
          return;
        }
        if (mainFrame.errorOccurred) {
          reject(new Error("Main frame (ID 0) has an error: ".concat(mainFrame.url)));
          return;
        }
        resolve();
      });
    });
  };
  var _attemptExecution = function attemptExecution() {
    var retryCount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
    if (isFirefox) {
      var execCode = func ? "(".concat(func.toString(), ")(...").concat(JSON.stringify(args), ")") : code;
      browserApi.tabs.executeScript(tabId, {
        code: execCode
      }, function (result) {
        if (browserApi.runtime.lastError) {
          if (callback) callback(new Error(browserApi.runtime.lastError.message));
        } else {
          if (callback) callback(null, result);
        }
      });
    } else {
      browserApi.tabs.get(tabId, function (tab) {
        if (!tab || !tab.url) {
          var error = new Error("Tab with ID ".concat(tabId, " does not exist or has no URL"));
          if (callback) callback(error);
          return;
        }
        if (isSystemPage(tab.url)) {
          var _error = new Error("Scripting not allowed on system page: ".concat(tab.url));
          if (callback) callback(_error);
          return;
        }
        if (tab.status !== 'complete') {
          if (retryCount < maxRetries) {
            setTimeout(function () {
              return _attemptExecution(retryCount + 1);
            }, retryDelay);
          } else {
            var _error2 = new Error("Tab with ID ".concat(tabId, " is not fully loaded after ").concat(maxRetries, " retries (status: ").concat(tab.status, ")"));
            if (callback) callback(_error2);
          }
          return;
        }
        checkFrameStatus().then(function () {
          browserApi.scripting.executeScript({
            target: {
              tabId: tabId
            },
            func: func,
            args: args,
            world: world
          }).then(function (result) {
            if (callback) callback(null, result);
          })["catch"](function (err) {
            if (callback) callback(err);
          });
        })["catch"](function (err) {
          if (retryCount < maxRetries) {
            setTimeout(function () {
              return _attemptExecution(retryCount + 1);
            }, retryDelay);
          } else {
            if (callback) callback(err);
          }
        });
      });
    }
  };
  _attemptExecution();
}
function isSystemPage(url) {
  var systemPages = ['chrome://', 'edge://', 'about:', 'chrome.google.com/webstore', 'microsoftedge.microsoft.com/addons'];
  return systemPages.some(function (page) {
    return url.startsWith(page);
  });
}
module.exports = {
  executeScriptCompat: executeScriptCompat
};

/***/ }),

/***/ "./src/common/functions/generateDeviceId.js":
/*!**************************************************!*\
  !*** ./src/common/functions/generateDeviceId.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   generateDeviceIdForProxyServer: () => (/* binding */ generateDeviceIdForProxyServer),
/* harmony export */   getUniqueAppId: () => (/* binding */ getUniqueAppId)
/* harmony export */ });
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_0__);
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }

var APP_ID = null;
var generateDeviceIdForProxyServer = /*#__PURE__*/function () {
  var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var _t, _t2;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          _t = btoa;
          _t2 = encodeURIComponent;
          _context.n = 1;
          return getUniqueAppId();
        case 1:
          return _context.a(2, _t(_t2(_context.v)));
      }
    }, _callee);
  }));
  return function generateDeviceIdForProxyServer() {
    return _ref.apply(this, arguments);
  };
}();
var getUniqueAppId = /*#__PURE__*/function () {
  var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    var uniqueAppId;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          _context2.n = 1;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getUniqueAppId();
        case 1:
          uniqueAppId = _context2.v;
          if (uniqueAppId) {
            _context2.n = 2;
            break;
          }
          uniqueAppId = APP_ID ? APP_ID : crypto.randomUUID();
          if (!APP_ID) {
            APP_ID = uniqueAppId;
          }
          _context2.n = 2;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().saveUniqueAppId(uniqueAppId);
        case 2:
          APP_ID = uniqueAppId;
          return _context2.a(2, uniqueAppId);
      }
    }, _callee2);
  }));
  return function getUniqueAppId() {
    return _ref2.apply(this, arguments);
  };
}();

/***/ }),

/***/ "./src/common/functions/pause.js":
/*!***************************************!*\
  !*** ./src/common/functions/pause.js ***!
  \***************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   pause: () => (/* binding */ pause)
/* harmony export */ });
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function pause() {
  return _pause.apply(this, arguments);
}
function _pause() {
  _pause = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var time,
      _args = arguments;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          time = _args.length > 0 && _args[0] !== undefined ? _args[0] : 0;
          _context.n = 1;
          return new Promise(function (resolve) {
            return setTimeout(resolve, time);
          });
        case 1:
          return _context.a(2, _context.v);
      }
    }, _callee);
  }));
  return _pause.apply(this, arguments);
}

/***/ }),

/***/ "./src/common/functions/updateFirefoxProxyListener.js":
/*!************************************************************!*\
  !*** ./src/common/functions/updateFirefoxProxyListener.js ***!
  \************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var _require = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require.log,
  LOG_LEVELS = _require.LOG_LEVELS;
var _require2 = __webpack_require__(/*! @sw/tools/common */ "./src/sw/tools/common.js"),
  createBypassMatchers = _require2.createBypassMatchers;
var firefoxProxyListener = null;

/**
 *  Firefox proxy listener
 * @param {Object} options
 * @param {string} options.scheme
 * @param {string} options.host
 * @param {number|string} options.port
 * @param {Array<string>} [options.bypassList=[]]
 * @param {boolean} [options.killSwitch=false]
 */
function updateFirefoxProxyListener(_x) {
  return _updateFirefoxProxyListener.apply(this, arguments);
}
function _updateFirefoxProxyListener() {
  _updateFirefoxProxyListener = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(options) {
    var _ref, scheme, host, port, _ref$bypassList, bypassList, _ref$killSwitch, killSwitch, bypassMatchers;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          _ref = options || {}, scheme = _ref.scheme, host = _ref.host, port = _ref.port, _ref$bypassList = _ref.bypassList, bypassList = _ref$bypassList === void 0 ? [] : _ref$bypassList, _ref$killSwitch = _ref.killSwitch, killSwitch = _ref$killSwitch === void 0 ? false : _ref$killSwitch;
          if (firefoxProxyListener && browserApi.proxy.onRequest.hasListener(firefoxProxyListener)) {
            browserApi.proxy.onRequest.removeListener(firefoxProxyListener);
            firefoxProxyListener = null;
          }
          bypassMatchers = createBypassMatchers(bypassList);
          firefoxProxyListener = function firefoxProxyListener(requestInfo) {
            try {
              var url = new URL(requestInfo.url);
              var hostname = url.hostname.toLowerCase();
              var _iterator = _createForOfIteratorHelper(bypassMatchers),
                _step;
              try {
                for (_iterator.s(); !(_step = _iterator.n()).done;) {
                  var match = _step.value;
                  if (match(hostname)) return {
                    type: "direct"
                  };
                }
              } catch (err) {
                _iterator.e(err);
              } finally {
                _iterator.f();
              }
              if (killSwitch) {
                return {
                  type: "http",
                  host: "127.0.0.1",
                  port: 1
                };
              }
              return {
                type: scheme,
                host: host,
                port: parseInt(port, 10)
              };
            } catch (e) {
              return {
                type: "direct"
              };
            }
          };
          browserApi.proxy.onRequest.addListener(firefoxProxyListener, {
            urls: ["<all_urls>"]
          });
          log(LOG_LEVELS.INFO, "Firefox proxy listener updated:", options);
        case 1:
          return _context.a(2);
      }
    }, _callee);
  }));
  return _updateFirefoxProxyListener.apply(this, arguments);
}
function clearFirefoxProxyListener() {
  return _clearFirefoxProxyListener.apply(this, arguments);
}
function _clearFirefoxProxyListener() {
  _clearFirefoxProxyListener = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          if (firefoxProxyListener && browserApi.proxy.onRequest.hasListener(firefoxProxyListener)) {
            browserApi.proxy.onRequest.removeListener(firefoxProxyListener);
            firefoxProxyListener = null;
            log(LOG_LEVELS.INFO, "Firefox proxy listener cleared");
          }
        case 1:
          return _context2.a(2);
      }
    }, _callee2);
  }));
  return _clearFirefoxProxyListener.apply(this, arguments);
}
module.exports = {
  updateFirefoxProxyListener: updateFirefoxProxyListener,
  clearFirefoxProxyListener: clearFirefoxProxyListener
};

/***/ }),

/***/ "./src/common/services/ApiClient.js":
/*!******************************************!*\
  !*** ./src/common/services/ApiClient.js ***!
  \******************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
var _require = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js"),
  API_URLS = _require.API_URLS,
  DEFAULT_HEADERS = _require.DEFAULT_HEADERS,
  getRefreshApiUrl = _require.getRefreshApiUrl,
  getTokenApiUrl = _require.getTokenApiUrl,
  getCitiesApiUrl = _require.getCitiesApiUrl,
  getAuthLinksApiUrl = _require.getAuthLinksApiUrl,
  getConnectApiUrl = _require.getConnectApiUrl,
  getMyIpApiUrl = _require.getMyIpApiUrl,
  getStateApiUrl = _require.getStateApiUrl,
  getPrivateLinksApiUrl = _require.getPrivateLinksApiUrl,
  getThreatProtectionApiUrl = _require.getThreatProtectionApiUrl,
  getIssueReportsApiUrl = _require.getIssueReportsApiUrl,
  getFeatureSuggestionsApiUrl = _require.getFeatureSuggestionsApiUrl;
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var _require2 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require2.log,
  LOG_LEVELS = _require2.LOG_LEVELS;
var _require3 = __webpack_require__(/*! @sw/constants/mapping_by_cotinent */ "./src/sw/constants/mapping_by_cotinent.js"),
  getFullUrl = _require3.getFullUrl,
  getAlphaCountryCode = _require3.getAlphaCountryCode,
  getContinentByCountry = _require3.getContinentByCountry;
var _require4 = __webpack_require__(/*! @common/functions/generateDeviceId */ "./src/common/functions/generateDeviceId.js"),
  getUniqueAppId = _require4.getUniqueAppId;
var _require5 = __webpack_require__(/*! @common/functions/pause */ "./src/common/functions/pause.js"),
  pause = _require5.pause;
var _require6 = __webpack_require__(/*! @sw/tools/common */ "./src/sw/tools/common.js"),
  getCountryCodeByCountry = _require6.getCountryCodeByCountry,
  getUserAgentForApi = _require6.getUserAgentForApi;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
var ApiClient = /*#__PURE__*/function () {
  function ApiClient() {
    _classCallCheck(this, ApiClient);
  }
  return _createClass(ApiClient, null, [{
    key: "request",
    value: (
    /**
     * Makes an HTTP request
     * @param {string} url
     * @param {Object} options
     * @param parentMethod
     * @returns {Promise<Object>}
     */
    function () {
      var _request = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(url) {
        var _ref,
          _ref$method,
          method,
          _ref$headers,
          headers,
          _ref$body,
          body,
          _ref$timeWaiting,
          timeWaiting,
          _ref$abortController,
          abortController,
          parentMethod,
          blockRequest,
          startPing,
          controller,
          timeoutId,
          params,
          response,
          lastPing,
          data,
          processData,
          _lastPing,
          _data$data,
          _data$data2,
          _lastPing2,
          _args = arguments,
          _t,
          _t2,
          _t3,
          _t4,
          _t5,
          _t6,
          _t7,
          _t8,
          _t9,
          _t0;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              _ref = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}, _ref$method = _ref.method, method = _ref$method === void 0 ? 'GET' : _ref$method, _ref$headers = _ref.headers, headers = _ref$headers === void 0 ? {} : _ref$headers, _ref$body = _ref.body, body = _ref$body === void 0 ? null : _ref$body, _ref$timeWaiting = _ref.timeWaiting, timeWaiting = _ref$timeWaiting === void 0 ? null : _ref$timeWaiting, _ref$abortController = _ref.abortController, abortController = _ref$abortController === void 0 ? null : _ref$abortController;
              parentMethod = _args.length > 2 && _args[2] !== undefined ? _args[2] : null;
              _context.n = 1;
              return StorageService.getBlockRequest();
            case 1:
              blockRequest = _context.v;
              if (!blockRequest) {
                _context.n = 3;
                break;
              }
              _context.n = 2;
              return pause(2000);
            case 2:
              _context.n = 3;
              return StorageService.saveBlockRequest(false);
            case 3:
              startPing = performance.now();
              controller = null;
              timeoutId = null;
              if (abortController) {
                controller = abortController;
              }
              if (timeWaiting) {
                if (!controller) {
                  controller = new AbortController();
                }
                timeoutId = setTimeout(function () {
                  return controller.abort();
                }, timeWaiting);
              }
              _t = method;
              _t2 = _objectSpread;
              _t3 = _objectSpread({}, DEFAULT_HEADERS);
              _t4 = {};
              _context.n = 4;
              return getUniqueAppId();
            case 4:
              _t5 = _context.v;
              _t6 = getUserAgentForApi();
              _t7 = _t2(_t3, _t4, {
                'Device-ID': _t5,
                'User-Agent': _t6
              }, headers);
              _t8 = body ? JSON.stringify(body) : null;
              params = {
                method: _t,
                headers: _t7,
                body: _t8
              };
              if (controller) {
                params.signal = controller.signal;
              }
              _context.p = 5;
              _context.n = 6;
              return fetch(url, params);
            case 6:
              response = _context.v;
              _context.p = 7;
              lastPing = Math.round(performance.now() - startPing);
              if (!(lastPing > 0)) {
                _context.n = 8;
                break;
              }
              _context.n = 8;
              return StorageService.savePing(lastPing);
            case 8:
              _context.n = 10;
              break;
            case 9:
              _context.p = 9;
              _t9 = _context.v;
              log(LOG_LEVELS.ERROR, "Calculation ping failed:  ".concat(_t9.message));
              _context.n = 10;
              return LogsService.addEvents('service.error_ping_failed', {}, _t9.message);
            case 10:
              _context.p = 10;
              if (timeoutId) {
                clearTimeout(timeoutId);
              }
              return _context.f(10);
            case 11:
              _context.n = 12;
              return response.json();
            case 12:
              data = _context.v;
              if (!parentMethod) {
                _context.n = 13;
                break;
              }
              processData = {};
              _lastPing = Math.round(performance.now() - startPing);
              if ('getCities' === parentMethod) {
                if (data.data) {
                  processData = 'import cities:' + data.data.length;
                } else {
                  processData = data;
                }
              } else if ('refreshToken' === parentMethod) {
                processData = {
                  'access_token': !!(data !== null && data !== void 0 && (_data$data = data.data) !== null && _data$data !== void 0 && _data$data.access_token),
                  'refresh_token': !!(data !== null && data !== void 0 && (_data$data2 = data.data) !== null && _data$data2 !== void 0 && _data$data2.refresh_token)
                };
              } else if (['getAuthLinks', 'getAuthToken'].includes(parentMethod)) {
                processData = {};
              } else {
                processData = data;
              }
              _context.n = 13;
              return LogsService.addConnectedEvents("fetch_end.".concat(parentMethod), {
                success: response.ok,
                status: response.status,
                processData: processData,
                ping: _lastPing
              });
            case 13:
              return _context.a(2, {
                success: response.ok,
                status: response.status,
                data: data
              });
            case 14:
              _context.p = 14;
              _t0 = _context.v;
              log(LOG_LEVELS.ERROR, "API request failed ".concat(url, ":  ").concat(_t0.message));
              if (!parentMethod) {
                _context.n = 15;
                break;
              }
              _lastPing2 = Math.round(performance.now() - startPing);
              _context.n = 15;
              return LogsService.addConnectedEvents("fetch_error.".concat(parentMethod), {
                success: false,
                error: _t0.message,
                code: (_t0 === null || _t0 === void 0 ? void 0 : _t0.code) || 'NO_ERROR_CODE',
                ping: _lastPing2
              });
            case 15:
              _context.n = 16;
              return LogsService.addEvents('service.error_request_failed', {
                url: url,
                error: _t0.message
              });
            case 16:
              return _context.a(2, {
                success: false,
                error: _t0.message
              });
          }
        }, _callee, null, [[7, 9, 10, 11], [5, 14]]);
      }));
      function request(_x) {
        return _request.apply(this, arguments);
      }
      return request;
    }()
    /**
     * Refreshes a token
     * @param {string} refresh_token
     * @returns {Promise<Object>}
     */
    )
  }, {
    key: "refreshToken",
    value: (function () {
      var _refreshToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(refresh_token) {
        var url;
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.n) {
            case 0:
              _context2.n = 1;
              return getRefreshApiUrl();
            case 1:
              url = _context2.v;
              _context2.n = 2;
              return LogsService.addConnectedEvents("fetch_start.refreshToken", {
                url: url
              });
            case 2:
              _context2.n = 3;
              return this.request(url, {
                method: 'POST',
                body: {
                  refresh_token: refresh_token
                }
              }, 'refreshToken');
            case 3:
              return _context2.a(2, _context2.v);
          }
        }, _callee2, this);
      }));
      function refreshToken(_x2) {
        return _refreshToken.apply(this, arguments);
      }
      return refreshToken;
    }())
  }, {
    key: "getAuthToken",
    value: function () {
      var _getAuthToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(token) {
        var url;
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              _context3.n = 1;
              return getTokenApiUrl();
            case 1:
              url = _context3.v;
              _context3.n = 2;
              return LogsService.addConnectedEvents("fetch_start.getAuthToken", {
                url: url
              });
            case 2:
              _context3.n = 3;
              return this.request(url, {
                method: 'POST',
                body: {
                  auth_code: token
                }
              }, 'getAuthToken');
            case 3:
              return _context3.a(2, _context3.v);
          }
        }, _callee3, this);
      }));
      function getAuthToken(_x3) {
        return _getAuthToken.apply(this, arguments);
      }
      return getAuthToken;
    }()
  }, {
    key: "validateTokenWithData",
    value: function () {
      var _validateTokenWithData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(token) {
        var abortController,
          response,
          _args4 = arguments,
          _t1;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              abortController = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : null;
              _t1 = ApiClient;
              _context4.n = 1;
              return getStateApiUrl();
            case 1:
              _context4.n = 2;
              return _t1.request.call(_t1, _context4.v, {
                method: 'GET',
                headers: {
                  Authorization: "Bearer ".concat(token),
                  'Content-Type': 'application/json'
                },
                abortController: abortController
              });
            case 2:
              response = _context4.v;
              if (!(response && response.success && response.status === 200)) {
                _context4.n = 3;
                break;
              }
              return _context4.a(2, {
                success: true,
                data: response.data
              });
            case 3:
              return _context4.a(2, {
                success: false,
                error: "Error get token",
                status_code: response.status
              });
            case 4:
              return _context4.a(2);
          }
        }, _callee4);
      }));
      function validateTokenWithData(_x4) {
        return _validateTokenWithData.apply(this, arguments);
      }
      return validateTokenWithData;
    }()
  }, {
    key: "getThreatProtectionData",
    value: function () {
      var _getThreatProtectionData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(token) {
        var response, _response$data, _t10;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.n) {
            case 0:
              _t10 = ApiClient;
              _context5.n = 1;
              return getThreatProtectionApiUrl();
            case 1:
              _context5.n = 2;
              return _t10.request.call(_t10, _context5.v, {
                method: 'GET',
                headers: {
                  Authorization: "Bearer ".concat(token),
                  'Content-Type': 'application/json'
                }
              });
            case 2:
              response = _context5.v;
              if (!(response.success && response.status === 200)) {
                _context5.n = 3;
                break;
              }
              return _context5.a(2, {
                success: true,
                data: (response === null || response === void 0 || (_response$data = response.data) === null || _response$data === void 0 ? void 0 : _response$data.data) || []
              });
            case 3:
              return _context5.a(2, {
                success: false,
                error: "Invalid token (status: ".concat(response.status, ")"),
                status_code: response.status
              });
            case 4:
              return _context5.a(2);
          }
        }, _callee5);
      }));
      function getThreatProtectionData(_x5) {
        return _getThreatProtectionData.apply(this, arguments);
      }
      return getThreatProtectionData;
    }()
  }, {
    key: "getConnect",
    value: function () {
      var _getConnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(token) {
        var cityCode,
          abortController,
          body,
          _args6 = arguments,
          _t11;
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.n) {
            case 0:
              cityCode = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : null;
              abortController = _args6.length > 2 && _args6[2] !== undefined ? _args6[2] : null;
              body = {
                type: 'proxy'
              };
              if (cityCode) {
                body.city_code = cityCode;
              } else {
                body.is_fastest = true;
              }
              _t11 = ApiClient;
              _context6.n = 1;
              return getConnectApiUrl();
            case 1:
              _context6.n = 2;
              return _t11.request.call(_t11, _context6.v, {
                method: 'POST',
                headers: {
                  'Authorization': "Bearer ".concat(token)
                },
                body: body,
                abortController: abortController
              });
            case 2:
              return _context6.a(2, _context6.v);
          }
        }, _callee6);
      }));
      function getConnect(_x6) {
        return _getConnect.apply(this, arguments);
      }
      return getConnect;
    }()
  }, {
    key: "getCities",
    value: function () {
      var _getCities = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
        var url, response, cities, apiCities, _apiCities;
        return _regenerator().w(function (_context7) {
          while (1) switch (_context7.n) {
            case 0:
              _context7.n = 1;
              return getCitiesApiUrl();
            case 1:
              url = _context7.v;
              _context7.n = 2;
              return LogsService.addConnectedEvents("fetch_start.getCities", {
                url: url
              });
            case 2:
              _context7.n = 3;
              return this.request(url, {
                method: 'GET'
              }, 'getCities');
            case 3:
              response = _context7.v;
              if (!response.success) {
                _context7.n = 9;
                break;
              }
              cities = response.data.data || [];
              cities = cities.filter(function (c) {
                return !c["private"];
              });
              if (!(cities && cities.length > 0)) {
                _context7.n = 5;
                break;
              }
              _context7.n = 4;
              return StorageService.saveCitiesList(cities);
            case 4:
              return _context7.a(2, cities);
            case 5:
              _context7.n = 6;
              return StorageService.getCitiesList();
            case 6:
              apiCities = _context7.v;
              if (!(apiCities && apiCities.length > 0)) {
                _context7.n = 7;
                break;
              }
              return _context7.a(2, apiCities);
            case 7:
              return _context7.a(2, []);
            case 8:
              _context7.n = 13;
              break;
            case 9:
              _context7.n = 10;
              return StorageService.getCitiesList();
            case 10:
              _apiCities = _context7.v;
              if (!(_apiCities && _apiCities.length > 0)) {
                _context7.n = 11;
                break;
              }
              return _context7.a(2, []);
            case 11:
              _context7.n = 12;
              return StorageService.saveCitiesList([]);
            case 12:
              return _context7.a(2, []);
            case 13:
              return _context7.a(2);
          }
        }, _callee7, this);
      }));
      function getCities() {
        return _getCities.apply(this, arguments);
      }
      return getCities;
    }()
  }, {
    key: "getAuthLinks",
    value: function () {
      var _getAuthLinks = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() {
        var url, response, authLinks, authDomains;
        return _regenerator().w(function (_context8) {
          while (1) switch (_context8.n) {
            case 0:
              _context8.n = 1;
              return getAuthLinksApiUrl();
            case 1:
              url = _context8.v;
              _context8.n = 2;
              return LogsService.addConnectedEvents("fetch_start.getAuthLinks", {
                url: url
              });
            case 2:
              _context8.n = 3;
              return this.request(url, {
                method: 'GET'
              }, 'getAuthLinks');
            case 3:
              response = _context8.v;
              if (!response.success) {
                _context8.n = 6;
                break;
              }
              authLinks = response.data.data || {};
              authDomains = ApiClient.extractUniqueDomains(authLinks);
              _context8.n = 4;
              return StorageService.saveAuthLinks(authLinks);
            case 4:
              _context8.n = 5;
              return StorageService.saveAuthDomains(authDomains);
            case 5:
              return _context8.a(2, authLinks);
            case 6:
              return _context8.a(2, []);
            case 7:
              return _context8.a(2);
          }
        }, _callee8, this);
      }));
      function getAuthLinks() {
        return _getAuthLinks.apply(this, arguments);
      }
      return getAuthLinks;
    }()
  }, {
    key: "getApiGateways",
    value: function () {
      var _getApiGateways = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9() {
        var isReconnect,
          abortController,
          controller,
          response,
          apiGateways,
          apiGatewayMain,
          settings,
          _args9 = arguments;
        return _regenerator().w(function (_context9) {
          while (1) switch (_context9.n) {
            case 0:
              isReconnect = _args9.length > 0 && _args9[0] !== undefined ? _args9[0] : false;
              abortController = _args9.length > 1 && _args9[1] !== undefined ? _args9[1] : null;
              _context9.n = 1;
              return LogsService.addConnectedEvents("fetch_start.getApiGateways", {
                url: API_URLS.API_GATEWAYS
              });
            case 1:
              controller = abortController ? abortController : new AbortController();
              _context9.n = 2;
              return this.request(API_URLS.API_GATEWAYS, {
                method: 'GET',
                timeWaiting: 10000,
                abortController: controller
              }, 'getApiGateways');
            case 2:
              response = _context9.v;
              if (!response.success) {
                _context9.n = 6;
                break;
              }
              apiGateways = response.data.data || [];
              apiGatewayMain = apiGateways[0];
              _context9.n = 3;
              return StorageService.getSettings();
            case 3:
              settings = _context9.v;
              if (settings && settings.changeApiGateway && settings.selectedApiGateway) {
                apiGatewayMain = settings.selectedApiGateway;
              }
              _context9.n = 4;
              return StorageService.saveApiGateways(apiGateways);
            case 4:
              if (isReconnect) {
                _context9.n = 5;
                break;
              }
              _context9.n = 5;
              return StorageService.saveApiGatewayMain(apiGatewayMain);
            case 5:
              return _context9.a(2, apiGatewayMain);
            case 6:
              _context9.n = 7;
              return LogsService.addConnectedEvents("fetch_error.getApiGateways", {
                url: API_URLS.API_GATEWAYS
              });
            case 7:
              return _context9.a(2, []);
            case 8:
              return _context9.a(2);
          }
        }, _callee9, this);
      }));
      function getApiGateways() {
        return _getApiGateways.apply(this, arguments);
      }
      return getApiGateways;
    }()
  }, {
    key: "getPingPong",
    value: function () {
      var _getPingPong = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0() {
        var response;
        return _regenerator().w(function (_context0) {
          while (1) switch (_context0.n) {
            case 0:
              _context0.n = 1;
              return this.request(API_URLS.PING_PONG, {
                method: 'GET'
              });
            case 1:
              response = _context0.v;
              return _context0.a(2, !!response.success);
          }
        }, _callee0, this);
      }));
      function getPingPong() {
        return _getPingPong.apply(this, arguments);
      }
      return getPingPong;
    }()
  }, {
    key: "extractUniqueDomains",
    value: function extractUniqueDomains(urlObject) {
      var domains = new Set();
      var getDomainFromUrl = function getDomainFromUrl(url) {
        try {
          var urlObj = new URL(url);
          return urlObj.hostname;
        } catch (_unused) {
          return null;
        }
      };
      for (var key in urlObject) {
        if (urlObject[key]) {
          var url = urlObject[key];
          var mainDomain = getDomainFromUrl(url);
          if (mainDomain) {
            domains.add(mainDomain);
          }
        }
      }
      return Array.from(domains);
    }
  }, {
    key: "getDomainForUpdate",
    value: function () {
      var _getDomainForUpdate = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(key, country) {
        var abortController,
          startPing,
          controller,
          timeoutId,
          continent,
          countryCode,
          alphaCountryCode,
          url,
          lastPing,
          _lastPing3,
          _args1 = arguments,
          _t12;
        return _regenerator().w(function (_context1) {
          while (1) switch (_context1.p = _context1.n) {
            case 0:
              abortController = _args1.length > 2 && _args1[2] !== undefined ? _args1[2] : null;
              startPing = performance.now();
              _context1.p = 1;
              controller = abortController ? abortController : new AbortController();
              timeoutId = setTimeout(function () {
                controller && controller.abort();
              }, 10000);
              continent = getContinentByCountry(country);
              _context1.n = 2;
              return getCountryCodeByCountry(country);
            case 2:
              countryCode = _context1.v;
              alphaCountryCode = getAlphaCountryCode(countryCode);
              url = getFullUrl(continent);
              _context1.n = 3;
              return LogsService.addConnectedEvents('fetch_start.getDomainForUpdate', {
                url: url,
                alphaCountryCode: alphaCountryCode,
                continent: continent
              });
            case 3:
              _context1.n = 4;
              return fetch(url, {
                method: 'GET',
                headers: {
                  'Content-Type': 'application/html',
                  'User-Agent': getUserAgentForApi(),
                  'X-Country-Code': alphaCountryCode
                },
                signal: controller.signal
              });
            case 4:
              lastPing = Math.round(performance.now() - startPing);
              _context1.n = 5;
              return LogsService.addConnectedEvents('fetch_end.getDomainForUpdate', {
                ping: lastPing
              });
            case 5:
              clearTimeout(timeoutId);
              return _context1.a(2, true);
            case 6:
              _context1.p = 6;
              _t12 = _context1.v;
              _lastPing3 = Math.round(performance.now() - startPing);
              _context1.n = 7;
              return LogsService.addConnectedEvents('fetch_error.getDomainForUpdate', {
                error: _t12.message,
                code: (_t12 === null || _t12 === void 0 ? void 0 : _t12.code) || 'NO_ERROR_CODE',
                ping: _lastPing3
              });
            case 7:
              return _context1.a(2, false);
          }
        }, _callee1, null, [[1, 6]]);
      }));
      function getDomainForUpdate(_x7, _x8) {
        return _getDomainForUpdate.apply(this, arguments);
      }
      return getDomainForUpdate;
    }()
  }, {
    key: "getMyIP",
    value: function () {
      var _getMyIP = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(token, abortController) {
        var _data$data3;
        var data, ip, userData, tempUserData, _t13;
        return _regenerator().w(function (_context10) {
          while (1) switch (_context10.n) {
            case 0:
              _t13 = ApiClient;
              _context10.n = 1;
              return getMyIpApiUrl();
            case 1:
              _context10.n = 2;
              return _t13.request.call(_t13, _context10.v, {
                method: 'GET',
                headers: {
                  Authorization: "Bearer ".concat(token),
                  'Content-Type': 'application/json'
                },
                timeWaiting: 10000,
                abortController: abortController
              });
            case 2:
              data = _context10.v;
              ip = data === null || data === void 0 || (_data$data3 = data.data) === null || _data$data3 === void 0 || (_data$data3 = _data$data3.data) === null || _data$data3 === void 0 ? void 0 : _data$data3.ip;
              if (!ip) {
                _context10.n = 4;
                break;
              }
              _context10.n = 3;
              return StorageService.getUserData();
            case 3:
              userData = _context10.v;
              tempUserData = Object.assign({}, userData);
              tempUserData.ip = ip;
              _context10.n = 4;
              return StorageService.saveUserData(tempUserData);
            case 4:
              return _context10.a(2, ip);
          }
        }, _callee10);
      }));
      function getMyIP(_x9, _x0) {
        return _getMyIP.apply(this, arguments);
      }
      return getMyIP;
    }()
  }, {
    key: "getPrivateLink",
    value: function () {
      var _getPrivateLink = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(type) {
        var token, url, response, privateLink;
        return _regenerator().w(function (_context11) {
          while (1) switch (_context11.n) {
            case 0:
              _context11.n = 1;
              return LogsService.addEvents('service.private_link', type);
            case 1:
              _context11.n = 2;
              return StorageService.getToken();
            case 2:
              token = _context11.v;
              if (token) {
                _context11.n = 3;
                break;
              }
              return _context11.a(2, null);
            case 3:
              _context11.n = 4;
              return getPrivateLinksApiUrl(type);
            case 4:
              url = _context11.v;
              _context11.n = 5;
              return LogsService.addConnectedEvents("fetch_start.getPrivateLink", {
                url: url
              });
            case 5:
              _context11.n = 6;
              return this.request(url, {
                method: 'GET',
                headers: {
                  'Authorization': "Bearer ".concat(token)
                }
              }, 'getPrivateLink');
            case 6:
              response = _context11.v;
              if (!response.success) {
                _context11.n = 8;
                break;
              }
              privateLink = response.data.data.link || null;
              _context11.n = 7;
              return StorageService.savePrivateLink(type, privateLink);
            case 7:
              return _context11.a(2, privateLink);
            case 8:
              return _context11.a(2, null);
            case 9:
              return _context11.a(2);
          }
        }, _callee11, this);
      }));
      function getPrivateLink(_x1) {
        return _getPrivateLink.apply(this, arguments);
      }
      return getPrivateLink;
    }()
    /**
     * @param {Object} reportData
     * @returns {Promise<{success: boolean, data?: any, error?: string}>}
     */
  }, {
    key: "sendReport",
    value: (function () {
      var _sendReport = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(reportData) {
        var url, formData, startTime, response, pingTime, data, _pingTime, _t14;
        return _regenerator().w(function (_context12) {
          while (1) switch (_context12.p = _context12.n) {
            case 0:
              _context12.n = 1;
              return getIssueReportsApiUrl();
            case 1:
              url = _context12.v;
              formData = new FormData();
              Object.entries(reportData).forEach(function (_ref2) {
                var _ref3 = _slicedToArray(_ref2, 2),
                  key = _ref3[0],
                  value = _ref3[1];
                if (value !== null && value !== undefined) {
                  if (value instanceof Blob) {
                    formData.append(key, value, value.name || 'file.json');
                  } else {
                    formData.append(key, typeof value === 'boolean' ? value.toString() : value);
                  }
                }
              });
              startTime = performance.now();
              _context12.p = 2;
              _context12.n = 3;
              return LogsService.addEvents('service.send_report', formData);
            case 3:
              _context12.n = 4;
              return LogsService.addConnectedEvents('fetch_start.sendReport', {
                url: url
              });
            case 4:
              _context12.n = 5;
              return fetch(url, {
                method: 'POST',
                headers: {
                  'User-Agent': getUserAgentForApi()
                },
                body: formData
              });
            case 5:
              response = _context12.v;
              pingTime = Math.round(performance.now() - startTime);
              if (!(pingTime > 0)) {
                _context12.n = 6;
                break;
              }
              _context12.n = 6;
              return StorageService.savePing(pingTime);
            case 6:
              if (!(response.status === 204 || response.headers.get('Content-Length') === '0')) {
                _context12.n = 8;
                break;
              }
              _context12.n = 7;
              return LogsService.addConnectedEvents('fetch_end.sendReport', {
                response_status: response.status,
                response_ok: response.ok,
                ping: pingTime
              });
            case 7:
              return _context12.a(2, {
                success: true,
                status: response.status
              });
            case 8:
              _context12.n = 9;
              return response.json()["catch"](function () {
                return null;
              });
            case 9:
              data = _context12.v;
              _context12.n = 10;
              return LogsService.addConnectedEvents('fetch_end.sendReport', {
                data: data,
                response_status: response.status,
                response_ok: response.ok,
                ping: pingTime
              });
            case 10:
              return _context12.a(2, {
                success: response.ok,
                status: response.status,
                data: data || undefined,
                error: response.ok ? undefined : (data === null || data === void 0 ? void 0 : data.message) || 'Unknown error'
              });
            case 11:
              _context12.p = 11;
              _t14 = _context12.v;
              log(LOG_LEVELS.ERROR, "Report submission failed: ".concat(_t14.message));
              _pingTime = Math.round(performance.now() - startTime);
              _context12.n = 12;
              return LogsService.addConnectedEvents('fetch_error.sendReport', {
                success: false,
                status: 0,
                error: _t14.message,
                ping: _pingTime,
                code: (_t14 === null || _t14 === void 0 ? void 0 : _t14.code) || 'NO_ERROR_CODE'
              });
            case 12:
              _context12.n = 13;
              return LogsService.addEvents('service.error_submission_failed', _t14);
            case 13:
              return _context12.a(2, {
                success: false,
                status: 0,
                error: _t14.message
              });
          }
        }, _callee12, null, [[2, 11]]);
      }));
      function sendReport(_x10) {
        return _sendReport.apply(this, arguments);
      }
      return sendReport;
    }())
  }, {
    key: "sendSuggestions",
    value: function () {
      var _sendSuggestions = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13(reportData) {
        var url, formData, startTime, response, pingTime, data, _pingTime2, _t15;
        return _regenerator().w(function (_context13) {
          while (1) switch (_context13.p = _context13.n) {
            case 0:
              _context13.n = 1;
              return getFeatureSuggestionsApiUrl();
            case 1:
              url = _context13.v;
              formData = new FormData();
              Object.entries(reportData).forEach(function (_ref4) {
                var _ref5 = _slicedToArray(_ref4, 2),
                  key = _ref5[0],
                  value = _ref5[1];
                if (value !== null && value !== undefined) {
                  formData.append(key, typeof value === 'boolean' ? value.toString() : value);
                }
              });
              startTime = performance.now();
              _context13.p = 2;
              _context13.n = 3;
              return LogsService.addConnectedEvents('fetch_start.sendSuggestions', {
                url: url
              });
            case 3:
              _context13.n = 4;
              return fetch(url, {
                method: 'POST',
                headers: {
                  'User-Agent': getUserAgentForApi()
                },
                body: formData
              });
            case 4:
              response = _context13.v;
              pingTime = Math.round(performance.now() - startTime);
              if (!(pingTime > 0)) {
                _context13.n = 5;
                break;
              }
              _context13.n = 5;
              return StorageService.savePing(pingTime);
            case 5:
              if (!(response.status === 204 || response.headers.get('Content-Length') === '0')) {
                _context13.n = 7;
                break;
              }
              _context13.n = 6;
              return LogsService.addConnectedEvents('fetch_end.sendSuggestions', {
                success: true,
                status: response.status,
                ping: pingTime
              });
            case 6:
              return _context13.a(2, {
                success: true,
                status: response.status
              });
            case 7:
              _context13.n = 8;
              return response.json()["catch"](function () {
                return null;
              });
            case 8:
              data = _context13.v;
              _context13.n = 9;
              return LogsService.addConnectedEvents('fetch_end.sendSuggestions', {
                success: response.ok,
                status: response.status,
                data: data || undefined,
                error: response.ok ? undefined : (data === null || data === void 0 ? void 0 : data.message) || 'Unknown error',
                ping: pingTime
              });
            case 9:
              return _context13.a(2, {
                success: response.ok,
                status: response.status,
                data: data || undefined,
                error: response.ok ? undefined : (data === null || data === void 0 ? void 0 : data.message) || 'Unknown error'
              });
            case 10:
              _context13.p = 10;
              _t15 = _context13.v;
              log(LOG_LEVELS.ERROR, "Send suggestions failed: ".concat(_t15.message));
              _pingTime2 = Math.round(performance.now() - startTime);
              _context13.n = 11;
              return LogsService.addConnectedEvents('fetch_error.sendSuggestions', {
                success: false,
                status: 0,
                error: _t15.message,
                code: (_t15 === null || _t15 === void 0 ? void 0 : _t15.code) || 'NO_ERROR_CODE',
                ping: _pingTime2
              });
            case 11:
              _context13.n = 12;
              return LogsService.addEvents('service.error_suggestions_failed', _t15);
            case 12:
              return _context13.a(2, {
                success: false,
                status: 0,
                error: _t15.message
              });
          }
        }, _callee13, null, [[2, 10]]);
      }));
      function sendSuggestions(_x11) {
        return _sendSuggestions.apply(this, arguments);
      }
      return sendSuggestions;
    }()
  }]);
}();
module.exports = ApiClient;

/***/ }),

/***/ "./src/common/services/CountrySelectorService.js":
/*!*******************************************************!*\
  !*** ./src/common/services/CountrySelectorService.js ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   CountrySelectorService: () => (/* binding */ CountrySelectorService)
/* harmony export */ });
/* harmony import */ var _entities_proxyserver__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @entities/proxyserver */ "./src/entities/proxyserver.js");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_services_ApiClient__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _sw_constants_country_code_mapping__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @sw/constants/country_code_mapping */ "./src/sw/constants/country_code_mapping.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js");
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_4__);
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }





var _require = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js"),
  FLAG_DOMAIN = _require.FLAG_DOMAIN;
var timeUpdate = null;
var CountrySelectorService = /*#__PURE__*/function () {
  function CountrySelectorService() {
    _classCallCheck(this, CountrySelectorService);
  }
  return _createClass(CountrySelectorService, null, [{
    key: "getApiCities",
    value: function () {
      var _getApiCities = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var apiCities;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.n) {
            case 0:
              _context.n = 1;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getCitiesList();
            case 1:
              apiCities = _context.v;
              if (!(apiCities && apiCities.length > 0)) {
                _context.n = 2;
                break;
              }
              return _context.a(2, apiCities);
            case 2:
              _context.n = 3;
              return CountrySelectorService.updateCities();
            case 3:
              return _context.a(2, _context.v);
          }
        }, _callee);
      }));
      function getApiCities() {
        return _getApiCities.apply(this, arguments);
      }
      return getApiCities;
    }()
  }, {
    key: "initUpdateCities",
    value: function initUpdateCities() {
      if (timeUpdate) {
        clearTimeout(timeUpdate);
        timeUpdate = null;
      }
      timeUpdate = setTimeout(function () {
        return CountrySelectorService.updateCitiesByTimeout();
      }, 60000);
    }
  }, {
    key: "updateCitiesByTimeout",
    value: function updateCitiesByTimeout() {
      CountrySelectorService.updateCities();
      if (timeUpdate) {
        clearTimeout(timeUpdate);
        timeUpdate = null;
      }
      timeUpdate = setTimeout(function () {
        return CountrySelectorService.updateCitiesByTimeout();
      }, 1200000);
    }
  }, {
    key: "updateCities",
    value: function () {
      var _updateCities = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
        var _t;
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.p = _context2.n) {
            case 0:
              _context2.p = 0;
              _context2.n = 1;
              return _services_ApiClient__WEBPACK_IMPORTED_MODULE_1___default().getCities();
            case 1:
              return _context2.a(2, _context2.v);
            case 2:
              _context2.p = 2;
              _t = _context2.v;
              return _context2.a(2, []);
          }
        }, _callee2, null, [[0, 2]]);
      }));
      function updateCities() {
        return _updateCities.apply(this, arguments);
      }
      return updateCities;
    }()
  }, {
    key: "getApiCountryList",
    value: function () {
      var _getApiCountryList = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
        var cities, countryMap;
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              _context3.n = 1;
              return this.getApiCities();
            case 1:
              cities = _context3.v;
              countryMap = new Map();
              cities.forEach(function (city) {
                var existing = countryMap.get(city.country) || {
                  cities: [],
                  cityCount: 0
                };
                existing.cities.push(city);
                existing.cityCount += 1;
                countryMap.set(city.country, existing);
              });
              return _context3.a(2, Array.from(countryMap.entries()).map(function (_ref) {
                var _COUNTRY_CODE_MAPPING;
                var _ref2 = _slicedToArray(_ref, 2),
                  name = _ref2[0],
                  data = _ref2[1];
                return {
                  name: name,
                  flag: "".concat(FLAG_DOMAIN).concat(((_COUNTRY_CODE_MAPPING = _sw_constants_country_code_mapping__WEBPACK_IMPORTED_MODULE_2__.COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2[data.cities[0].country_code]) === null || _COUNTRY_CODE_MAPPING === void 0 ? void 0 : _COUNTRY_CODE_MAPPING.toLowerCase()) || 'xx', ".png"),
                  city: data.cities[0].city,
                  code: data.cities[0].code,
                  cities: data.cities,
                  coordinates: data.cities[0].coordinates,
                  api_gateways: data.cities[0].api_gateways,
                  cityCount: data.cityCount
                };
              }));
          }
        }, _callee3, this);
      }));
      function getApiCountryList() {
        return _getApiCountryList.apply(this, arguments);
      }
      return getApiCountryList;
    }()
  }, {
    key: "getCityCodeForCountry",
    value: function () {
      var _getCityCodeForCountry = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(countryName) {
        var cityCode, cities, city, _city, _city2;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              _context4.n = 1;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSelectedCity();
            case 1:
              cityCode = _context4.v;
              _context4.n = 2;
              return this.getApiCities();
            case 2:
              cities = _context4.v;
              if (!cityCode) {
                _context4.n = 6;
                break;
              }
              city = cities.find(function (c) {
                return c.country === countryName && c.code === cityCode;
              });
              if (!city) {
                _context4.n = 3;
                break;
              }
              return _context4.a(2, cityCode);
            case 3:
              _context4.n = 4;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().clearSelectedCity();
            case 4:
              _city = cities.find(function (c) {
                return c.country === countryName;
              });
              return _context4.a(2, _city ? _city.code : null);
            case 5:
              _context4.n = 7;
              break;
            case 6:
              _city2 = cities.find(function (c) {
                return c.country === countryName;
              });
              return _context4.a(2, _city2 ? _city2.code : null);
            case 7:
              return _context4.a(2);
          }
        }, _callee4, this);
      }));
      function getCityCodeForCountry(_x) {
        return _getCityCodeForCountry.apply(this, arguments);
      }
      return getCityCodeForCountry;
    }()
  }, {
    key: "getCountryByCity",
    value: function () {
      var _getCountryByCity = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(cityCode) {
        var cities, city;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.n) {
            case 0:
              _context5.n = 1;
              return this.getApiCities();
            case 1:
              cities = _context5.v;
              city = cities.find(function (c) {
                return c.code === cityCode;
              });
              return _context5.a(2, city === null || city === void 0 ? void 0 : city.country);
          }
        }, _callee5, this);
      }));
      function getCountryByCity(_x2) {
        return _getCountryByCity.apply(this, arguments);
      }
      return getCountryByCity;
    }()
  }, {
    key: "getInfoByCityCode",
    value: function () {
      var _getInfoByCityCode = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(code) {
        var cities, city;
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.n) {
            case 0:
              _context6.n = 1;
              return this.getApiCities();
            case 1:
              cities = _context6.v;
              city = cities.find(function (c) {
                return c.code === code;
              });
              return _context6.a(2, city ? city : null);
          }
        }, _callee6, this);
      }));
      function getInfoByCityCode(_x3) {
        return _getInfoByCityCode.apply(this, arguments);
      }
      return getInfoByCityCode;
    }()
  }, {
    key: "getApiCountryProxy",
    value: function getApiCountryProxy(countryName, serverDomain, username, password) {
      var lat = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 0;
      var lon = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
      var timeZone = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : "";
      var offset = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : 0;
      return new _entities_proxyserver__WEBPACK_IMPORTED_MODULE_0__.ProxyServer(serverDomain, _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_4__.SERVER_DEF_PORT, countryName, username, password, lat, lon, timeZone, offset);
    }
  }, {
    key: "getRandomCountry",
    value: function () {
      var _getRandomCountry = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
        var countries, countryNames;
        return _regenerator().w(function (_context7) {
          while (1) switch (_context7.n) {
            case 0:
              _context7.n = 1;
              return this.getApiCountryList();
            case 1:
              countries = _context7.v;
              countryNames = countries.map(function (country) {
                return country.name;
              });
              if (!(countryNames.length === 0)) {
                _context7.n = 2;
                break;
              }
              return _context7.a(2, "");
            case 2:
              return _context7.a(2, countryNames[Math.floor(Math.random() * countryNames.length)]);
          }
        }, _callee7, this);
      }));
      function getRandomCountry() {
        return _getRandomCountry.apply(this, arguments);
      }
      return getRandomCountry;
    }()
  }]);
}();

/***/ }),

/***/ "./src/common/services/HttpRequestApi.js":
/*!***********************************************!*\
  !*** ./src/common/services/HttpRequestApi.js ***!
  \***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   HttpRequestApi: () => (/* binding */ HttpRequestApi),
/* harmony export */   sendEndConnectRequestByServer: () => (/* binding */ sendEndConnectRequestByServer)
/* harmony export */ });
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _common_functions_generateDeviceId__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @common/functions/generateDeviceId */ "./src/common/functions/generateDeviceId.js");
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js");
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_5__);
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }






var START_STATUS = 'start';
var END_STATUS = 'end';
var PING_STATUS = 'ping';
var SWITCH_STATUS = 'switch';
var buildHeaders = function buildHeaders(auth, status) {
  return {
    'X-Auth': "Basic ".concat(auth),
    'Authorization': "Basic ".concat(auth),
    'Connection': 'keep-alive',
    'Accept-Encoding': 'identity',
    'Apexguard-Session-Action': status
  };
};
var HttpRequestApi = /*#__PURE__*/function () {
  function HttpRequestApi(serverProxy) {
    _classCallCheck(this, HttpRequestApi);
    this.serverProxy = serverProxy;
  }
  return _createClass(HttpRequestApi, [{
    key: "sendStartConnectRequest",
    value: function () {
      var _sendStartConnectRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var username,
          password,
          abortByTimer,
          without_double,
          _args = arguments;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.n) {
            case 0:
              username = _args.length > 0 && _args[0] !== undefined ? _args[0] : null;
              password = _args.length > 1 && _args[1] !== undefined ? _args[1] : null;
              abortByTimer = _args.length > 2 && _args[2] !== undefined ? _args[2] : false;
              without_double = _args.length > 3 && _args[3] !== undefined ? _args[3] : false;
              _context.n = 1;
              return this.sendConnectCheckUser(username, password, START_STATUS, abortByTimer, without_double);
            case 1:
              return _context.a(2, _context.v);
          }
        }, _callee, this);
      }));
      function sendStartConnectRequest() {
        return _sendStartConnectRequest.apply(this, arguments);
      }
      return sendStartConnectRequest;
    }()
  }, {
    key: "sendEndConnectRequest",
    value: function () {
      var _sendEndConnectRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
        var username,
          password,
          abortByTimer,
          without_double,
          _args2 = arguments;
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.n) {
            case 0:
              username = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : null;
              password = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : null;
              abortByTimer = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : false;
              without_double = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : false;
              _context2.n = 1;
              return this.sendConnectCheckUser(username, password, END_STATUS, abortByTimer, without_double);
            case 1:
              return _context2.a(2, _context2.v);
          }
        }, _callee2, this);
      }));
      function sendEndConnectRequest() {
        return _sendEndConnectRequest.apply(this, arguments);
      }
      return sendEndConnectRequest;
    }()
  }, {
    key: "sendSwitchConnectRequest",
    value: function () {
      var _sendSwitchConnectRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
        var username,
          password,
          abortByTimer,
          _args3 = arguments;
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              username = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : null;
              password = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : null;
              abortByTimer = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : false;
              _context3.n = 1;
              return this.sendConnectCheckUser(username, password, SWITCH_STATUS, abortByTimer);
            case 1:
              return _context3.a(2, _context3.v);
          }
        }, _callee3, this);
      }));
      function sendSwitchConnectRequest() {
        return _sendSwitchConnectRequest.apply(this, arguments);
      }
      return sendSwitchConnectRequest;
    }()
  }, {
    key: "sendPingConnectRequest",
    value: function () {
      var _sendPingConnectRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
        var username,
          password,
          _args4 = arguments;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              username = _args4.length > 0 && _args4[0] !== undefined ? _args4[0] : null;
              password = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : null;
              _context4.n = 1;
              return this.sendConnectCheckUser(username, password, PING_STATUS);
            case 1:
              return _context4.a(2, _context4.v);
          }
        }, _callee4, this);
      }));
      function sendPingConnectRequest() {
        return _sendPingConnectRequest.apply(this, arguments);
      }
      return sendPingConnectRequest;
    }()
  }, {
    key: "sendConnectCheckUser",
    value: function () {
      var _sendConnectCheckUser = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
        var usernameTemp,
          passwordTemp,
          status,
          abortByTimer,
          without_double,
          data,
          username,
          password,
          pauseSettings,
          _args5 = arguments;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.n) {
            case 0:
              usernameTemp = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : null;
              passwordTemp = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : null;
              status = _args5.length > 2 ? _args5[2] : undefined;
              abortByTimer = _args5.length > 3 && _args5[3] !== undefined ? _args5[3] : false;
              without_double = _args5.length > 4 && _args5[4] !== undefined ? _args5[4] : false;
              _context5.n = 1;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getPauseSetting();
            case 1:
              pauseSettings = _context5.v;
              if ((!usernameTemp || !passwordTemp) && pauseSettings !== null && pauseSettings !== void 0 && pauseSettings.pauseProxy) {
                data = pauseSettings.pauseProxy;
                if (data) {
                  username = data.username;
                  password = data.password;
                }
              } else {
                username = usernameTemp;
                password = passwordTemp;
              }
              if (!((!username || !password) && status !== START_STATUS)) {
                _context5.n = 2;
                break;
              }
              return _context5.a(2, null);
            case 2:
              _context5.n = 3;
              return this.sendConnectStatusRequest(username, password, status, abortByTimer, without_double);
            case 3:
              return _context5.a(2, _context5.v);
          }
        }, _callee5, this);
      }));
      function sendConnectCheckUser() {
        return _sendConnectCheckUser.apply(this, arguments);
      }
      return sendConnectCheckUser;
    }()
  }, {
    key: "sendConnectStatusRequest",
    value: function () {
      var _sendConnectStatusRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(username, password, status) {
        var abortByTimer,
          without_double,
          controller,
          startPing,
          timeout,
          onStorageChanged,
          deviceId,
          auth,
          signal,
          logStatus,
          response,
          lastPing,
          _lastPing,
          _args6 = arguments,
          _t;
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.p = _context6.n) {
            case 0:
              abortByTimer = _args6.length > 3 && _args6[3] !== undefined ? _args6[3] : false;
              without_double = _args6.length > 4 && _args6[4] !== undefined ? _args6[4] : false;
              if (abortByTimer) {
                controller = new AbortController();
              }
              startPing = performance.now();
              _context6.p = 1;
              if (abortByTimer) {
                onStorageChanged = function onStorageChanged(details) {
                  var _details$cancelDiscon;
                  if ((_details$cancelDiscon = details.cancelDisconnect) !== null && _details$cancelDiscon !== void 0 && _details$cancelDiscon.newValue) {
                    controller.abort();
                  }
                };
                _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default().storage.onChanged.addListener(onStorageChanged);
              }
              _context6.n = 2;
              return (0,_common_functions_generateDeviceId__WEBPACK_IMPORTED_MODULE_2__.generateDeviceIdForProxyServer)();
            case 2:
              deviceId = _context6.v;
              auth = btoa("".concat(deviceId, "|").concat(username, "|").concat(this.serverProxy, ":").concat(password));
              signal = controller ? controller.signal : undefined;
              if (abortByTimer) {
                timeout = setTimeout(function () {
                  controller.abort();
                  (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.WARN, "[HttpRequest] ".concat(status, " aborted after 20s, retrying..."));
                }, 20000);
              }
              logStatus = status === END_STATUS ? 'closeserversession' : status;
              _context6.n = 3;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addConnectedEvents('fetch_start.sendConnectStatusRequest', {
                serverProxy: this.serverProxy,
                status: logStatus
              });
            case 3:
              _context6.n = 4;
              return fetch("https://".concat(this.serverProxy, ":").concat(_sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_3__.SERVER_DEF_PORT), {
                method: 'POST',
                headers: buildHeaders(auth, status),
                signal: signal
              });
            case 4:
              response = _context6.v;
              if (timeout) clearTimeout(timeout);
              if (onStorageChanged) _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default().storage.onChanged.removeListener(onStorageChanged);
              lastPing = Math.round(performance.now() - startPing);
              _context6.n = 5;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addConnectedEvents('fetch_end.sendConnectStatusRequest', {
                status: status,
                ping: lastPing,
                response: response
              });
            case 5:
              if (response.ok) {
                _context6.n = 7;
                break;
              }
              _context6.n = 6;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addConnectedEvents('fetch_error.sendConnectStatusRequest', {
                status: status,
                ping: lastPing,
                code: response.status || 'NO_STATUS'
              });
            case 6:
              return _context6.a(2, false);
            case 7:
              return _context6.a(2, status === PING_STATUS ? response : true);
            case 8:
              _context6.p = 8;
              _t = _context6.v;
              if (timeout) clearTimeout(timeout);
              if (onStorageChanged) _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default().storage.onChanged.removeListener(onStorageChanged);
              if (abortByTimer && _t.name === 'AbortError' && !without_double) {
                this.backgroundSendConnectStatusRequestQuiet(username, password, END_STATUS);
              }
              _lastPing = Math.round(performance.now() - startPing);
              _context6.n = 9;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addConnectedEvents('fetch_error.sendConnectStatusRequest', {
                error: _t.message,
                ping: _lastPing,
                code: (_t === null || _t === void 0 ? void 0 : _t.code) || 'NO_ERROR_CODE'
              });
            case 9:
              _context6.n = 10;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addEvents('init.error_send_connect_status_request', {}, '[HttpRequest] ' + status + " request error:".concat(_t));
            case 10:
              return _context6.a(2, false);
          }
        }, _callee6, this, [[1, 8]]);
      }));
      function sendConnectStatusRequest(_x, _x2, _x3) {
        return _sendConnectStatusRequest.apply(this, arguments);
      }
      return sendConnectStatusRequest;
    }()
  }, {
    key: "backgroundSendConnectStatusRequestQuiet",
    value: function () {
      var _backgroundSendConnectStatusRequestQuiet = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(username, password, status) {
        var serverProxy,
          url,
          deviceId,
          auth,
          result,
          notClosedSession,
          updatedSessions,
          _args7 = arguments,
          _t2;
        return _regenerator().w(function (_context7) {
          while (1) switch (_context7.p = _context7.n) {
            case 0:
              serverProxy = _args7.length > 3 && _args7[3] !== undefined ? _args7[3] : null;
              url = serverProxy ? serverProxy : this.serverProxy;
              _context7.p = 1;
              _context7.n = 2;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().addNotClosedSession({
                host: url,
                username: username,
                password: password
              });
            case 2:
              _context7.n = 3;
              return (0,_common_functions_generateDeviceId__WEBPACK_IMPORTED_MODULE_2__.generateDeviceIdForProxyServer)();
            case 3:
              deviceId = _context7.v;
              auth = btoa("".concat(deviceId, "|").concat(username, "|").concat(this.serverProxy, ":").concat(password));
              _context7.n = 4;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addConnectedEvents('fetch_start.duplicateSendConnectStatusRequest', {
                serverProxy: this.serverProxy,
                username: username,
                status: status
              });
            case 4:
              _context7.n = 5;
              return fetch("https://".concat(url, ":").concat(_sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_3__.SERVER_DEF_PORT), {
                method: 'POST',
                headers: buildHeaders(auth, status)
              });
            case 5:
              result = _context7.v;
              if (!(result && result.status === 202)) {
                _context7.n = 7;
                break;
              }
              _context7.n = 6;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getNotClosedSession();
            case 6:
              notClosedSession = _context7.v;
              updatedSessions = notClosedSession.filter(function (session) {
                return session.host !== url;
              });
              _context7.n = 7;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().saveNotClosedSession(updatedSessions);
            case 7:
              _context7.n = 8;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addConnectedEvents('fetch_end.duplicateSendConnectStatusRequest', {
                serverProxy: this.serverProxy,
                username: username,
                status: status
              });
            case 8:
              return _context7.a(2, true);
            case 9:
              _context7.p = 9;
              _t2 = _context7.v;
              _context7.n = 10;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().addNotClosedSession({
                host: url,
                username: username,
                password: password
              });
            case 10:
              _context7.n = 11;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addConnectedEvents('fetch_error.duplicateSendConnectStatusRequest', {
                serverProxy: this.serverProxy,
                username: username,
                status: status,
                message: _t2.message,
                code: (_t2 === null || _t2 === void 0 ? void 0 : _t2.code) || 'NO_ERROR_CODE'
              });
            case 11:
              return _context7.a(2, false);
          }
        }, _callee7, this, [[1, 9]]);
      }));
      function backgroundSendConnectStatusRequestQuiet(_x4, _x5, _x6) {
        return _backgroundSendConnectStatusRequestQuiet.apply(this, arguments);
      }
      return backgroundSendConnectStatusRequestQuiet;
    }()
  }]);
}();
function sendEndConnectRequestByServer() {
  return _sendEndConnectRequestByServer.apply(this, arguments);
}
function _sendEndConnectRequestByServer() {
  _sendEndConnectRequestByServer = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() {
    var username,
      password,
      abortByTimer,
      serverDomain,
      request,
      _args8 = arguments;
    return _regenerator().w(function (_context8) {
      while (1) switch (_context8.n) {
        case 0:
          username = _args8.length > 0 && _args8[0] !== undefined ? _args8[0] : null;
          password = _args8.length > 1 && _args8[1] !== undefined ? _args8[1] : null;
          abortByTimer = _args8.length > 2 && _args8[2] !== undefined ? _args8[2] : false;
          _context8.n = 1;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getServerDomain();
        case 1:
          serverDomain = _context8.v;
          request = new HttpRequestApi(serverDomain);
          _context8.n = 2;
          return request.sendEndConnectRequest(username, password, abortByTimer);
        case 2:
          return _context8.a(2);
      }
    }, _callee8);
  }));
  return _sendEndConnectRequestByServer.apply(this, arguments);
}

/***/ }),

/***/ "./src/common/services/IndexedDBService.js":
/*!*************************************************!*\
  !*** ./src/common/services/IndexedDBService.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   IndexedDBService: () => (/* binding */ IndexedDBService)
/* harmony export */ });
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }

var _dbName = /*#__PURE__*/new WeakMap();
var _storeName = /*#__PURE__*/new WeakMap();
var _stores = /*#__PURE__*/new WeakMap();
var _version = /*#__PURE__*/new WeakMap();
var _db = /*#__PURE__*/new WeakMap();
var _dbPromise = /*#__PURE__*/new WeakMap();
var _maxLogs = /*#__PURE__*/new WeakMap();
var _IndexedDBService_brand = /*#__PURE__*/new WeakSet();
var IndexedDBService = /*#__PURE__*/function () {
  function IndexedDBService() {
    var maxLogs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
    var storeName = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
    var version = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;
    _classCallCheck(this, IndexedDBService);
    _classPrivateMethodInitSpec(this, _IndexedDBService_brand);
    _classPrivateFieldInitSpec(this, _dbName, 'apex_guard_store');
    _classPrivateFieldInitSpec(this, _storeName, 'events');
    _classPrivateFieldInitSpec(this, _stores, ['events', 'connected']);
    _classPrivateFieldInitSpec(this, _version, 2);
    _classPrivateFieldInitSpec(this, _db, null);
    _classPrivateFieldInitSpec(this, _dbPromise, null);
    _classPrivateFieldInitSpec(this, _maxLogs, 0);
    if (storeName) {
      _classPrivateFieldSet(_storeName, this, storeName);
    }
    if (version) {
      _classPrivateFieldSet(_version, this, version);
    }
    _classPrivateFieldSet(_maxLogs, this, maxLogs);
  }
  return _createClass(IndexedDBService, [{
    key: "add",
    value: function () {
      var _add = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(type) {
        var _this = this;
        var message,
          data,
          db,
          newData,
          _args3 = arguments,
          _t;
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.p = _context3.n) {
            case 0:
              message = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : '';
              data = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : null;
              _context3.p = 1;
              _context3.n = 2;
              return _assertClassBrand(_IndexedDBService_brand, this, _openDB).call(this);
            case 2:
              db = _context3.v;
              if (db) {
                _context3.n = 3;
                break;
              }
              return _context3.a(2);
            case 3:
              newData = {
                type: type
              };
              if (message && typeof message === 'string') {
                newData.message = message;
              }
              if (data && (Array.isArray(data) || typeof data === 'string' || _typeof(data) === 'object')) {
                newData.data = JSON.parse(JSON.stringify(data));
              }
              newData._timestamp = Date.now();
              newData._time = new Date().toISOString();
              return _context3.a(2, new Promise(function (resolve) {
                var transaction = db.transaction([_classPrivateFieldGet(_storeName, _this)], 'readwrite');
                var store = transaction.objectStore(_classPrivateFieldGet(_storeName, _this));
                var addRequest = store.add(newData);
                addRequest.onsuccess = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
                  var countRequest;
                  return _regenerator().w(function (_context2) {
                    while (1) switch (_context2.n) {
                      case 0:
                        if (_classPrivateFieldGet(_maxLogs, _this) > 0) {
                          countRequest = store.count();
                          countRequest.onsuccess = /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
                            var count, cursorRequest;
                            return _regenerator().w(function (_context) {
                              while (1) switch (_context.n) {
                                case 0:
                                  count = countRequest.result;
                                  if (count > _classPrivateFieldGet(_maxLogs, _this)) {
                                    cursorRequest = store.openCursor(null, 'next');
                                    cursorRequest.onsuccess = function () {
                                      var cursor = cursorRequest.result;
                                      if (cursor) {
                                        cursor["delete"]();
                                      }
                                    };
                                    cursorRequest.onerror = function () {
                                      _services_LogsService__WEBPACK_IMPORTED_MODULE_0__["default"].addEvents('service.indexDB.error.failed_to_open');
                                    };
                                  }
                                  resolve();
                                case 1:
                                  return _context.a(2);
                              }
                            }, _callee);
                          }));
                          countRequest.onerror = function () {
                            resolve();
                          };
                        } else {
                          resolve();
                        }
                      case 1:
                        return _context2.a(2);
                    }
                  }, _callee2);
                }));
                addRequest.onerror = function () {
                  _services_LogsService__WEBPACK_IMPORTED_MODULE_0__["default"].addEvents('service.indexDB.error.failed_to_add');
                  resolve();
                };
              }));
            case 4:
              _context3.p = 4;
              _t = _context3.v;
              _services_LogsService__WEBPACK_IMPORTED_MODULE_0__["default"].addEvents('service.indexDB.error.failed_to_adding');
              return _context3.a(2);
          }
        }, _callee3, this, [[1, 4]]);
      }));
      function add(_x) {
        return _add.apply(this, arguments);
      }
      return add;
    }()
  }, {
    key: "get",
    value: function () {
      var _get = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
        var db, store, _t2;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.p = _context4.n) {
            case 0:
              _context4.p = 0;
              _context4.n = 1;
              return _assertClassBrand(_IndexedDBService_brand, this, _openDB).call(this);
            case 1:
              db = _context4.v;
              if (db) {
                _context4.n = 2;
                break;
              }
              return _context4.a(2, []);
            case 2:
              store = db.transaction(_classPrivateFieldGet(_storeName, this), 'readonly').objectStore(_classPrivateFieldGet(_storeName, this));
              _context4.n = 3;
              return new Promise(function (resolve) {
                var request = store.getAll();
                request.onsuccess = function () {
                  return resolve(request.result);
                };
                request.onerror = function () {
                  resolve([]);
                };
              });
            case 3:
              return _context4.a(2, _context4.v);
            case 4:
              _context4.p = 4;
              _t2 = _context4.v;
              _services_LogsService__WEBPACK_IMPORTED_MODULE_0__["default"].addEvents('service.indexDB.error.unexpected');
              return _context4.a(2, []);
          }
        }, _callee4, this, [[0, 4]]);
      }));
      function get() {
        return _get.apply(this, arguments);
      }
      return get;
    }()
  }, {
    key: "getAllStores",
    value: function () {
      var _getAllStores = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
        var storeNames,
          db,
          results,
          merged,
          _args5 = arguments,
          _t3;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.p = _context5.n) {
            case 0:
              storeNames = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : _classPrivateFieldGet(_stores, this);
              _context5.p = 1;
              _context5.n = 2;
              return _assertClassBrand(_IndexedDBService_brand, this, _openDB).call(this);
            case 2:
              db = _context5.v;
              if (db) {
                _context5.n = 3;
                break;
              }
              return _context5.a(2, []);
            case 3:
              _context5.n = 4;
              return Promise.all(storeNames.map(function (storeName) {
                return new Promise(function (resolve) {
                  var transaction = db.transaction(storeName, 'readonly');
                  var store = transaction.objectStore(storeName);
                  var request = store.getAll();
                  request.onsuccess = function () {
                    return resolve(request.result);
                  };
                  request.onerror = function () {
                    return resolve([]);
                  };
                });
              }));
            case 4:
              results = _context5.v;
              merged = results.flat();
              merged.sort(function (a, b) {
                return a._timestamp - b._timestamp;
              });
              return _context5.a(2, merged);
            case 5:
              _context5.p = 5;
              _t3 = _context5.v;
              _services_LogsService__WEBPACK_IMPORTED_MODULE_0__["default"].addEvents('service.indexDB.error.unexpected_get_all');
              return _context5.a(2, []);
          }
        }, _callee5, this, [[1, 5]]);
      }));
      function getAllStores() {
        return _getAllStores.apply(this, arguments);
      }
      return getAllStores;
    }()
  }, {
    key: "clearData",
    value: function () {
      var _clearData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() {
        var _this2 = this;
        var db, _t4;
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.p = _context6.n) {
            case 0:
              _context6.p = 0;
              _context6.n = 1;
              return _assertClassBrand(_IndexedDBService_brand, this, _openDB).call(this);
            case 1:
              db = _context6.v;
              if (db) {
                _context6.n = 2;
                break;
              }
              return _context6.a(2);
            case 2:
              return _context6.a(2, new Promise(function (resolve) {
                var transaction = db.transaction([_classPrivateFieldGet(_storeName, _this2)], 'readwrite');
                var store = transaction.objectStore(_classPrivateFieldGet(_storeName, _this2));
                var request = store.clear();
                request.onsuccess = function () {
                  resolve();
                };
                request.onerror = function () {
                  resolve();
                };
              }));
            case 3:
              _context6.p = 3;
              _t4 = _context6.v;
              return _context6.a(2);
          }
        }, _callee6, this, [[0, 3]]);
      }));
      function clearData() {
        return _clearData.apply(this, arguments);
      }
      return clearData;
    }()
  }, {
    key: "close",
    value: function close() {
      if (_classPrivateFieldGet(_db, this)) {
        _classPrivateFieldGet(_db, this).close();
        _classPrivateFieldSet(_db, this, null);
        _classPrivateFieldSet(_dbPromise, this, null);
      }
    }
  }]);
}();
function _openDB() {
  return _openDB2.apply(this, arguments);
}
function _openDB2() {
  _openDB2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
    var _this3 = this;
    return _regenerator().w(function (_context7) {
      while (1) switch (_context7.n) {
        case 0:
          if (!_classPrivateFieldGet(_db, this)) {
            _context7.n = 1;
            break;
          }
          return _context7.a(2, _classPrivateFieldGet(_db, this));
        case 1:
          if (!_classPrivateFieldGet(_dbPromise, this)) {
            _classPrivateFieldSet(_dbPromise, this, new Promise(function (resolve) {
              var request = indexedDB.open(_classPrivateFieldGet(_dbName, _this3), _classPrivateFieldGet(_version, _this3));
              request.onerror = function () {
                _classPrivateFieldSet(_dbPromise, _this3, null);
                _services_LogsService__WEBPACK_IMPORTED_MODULE_0__["default"].addEvents('service.indexDB.error.open_database');
                resolve(null);
              };
              request.onsuccess = function (event) {
                _classPrivateFieldSet(_db, _this3, event.target.result);
                _classPrivateFieldGet(_db, _this3).onclose = function () {
                  _services_LogsService__WEBPACK_IMPORTED_MODULE_0__["default"].addEvents('service.indexDB.database_closed');
                  _classPrivateFieldSet(_db, _this3, null);
                  _classPrivateFieldSet(_dbPromise, _this3, null);
                };
                resolve(_classPrivateFieldGet(_db, _this3));
              };
              request.onupgradeneeded = function (event) {
                var db = event.target.result;
                var _iterator = _createForOfIteratorHelper(_classPrivateFieldGet(_stores, _this3)),
                  _step;
                try {
                  for (_iterator.s(); !(_step = _iterator.n()).done;) {
                    var store = _step.value;
                    if (!db.objectStoreNames.contains(store)) {
                      db.createObjectStore(store, {
                        autoIncrement: true
                      });
                    }
                  }
                } catch (err) {
                  _iterator.e(err);
                } finally {
                  _iterator.f();
                }
              };
            }));
          }
          return _context7.a(2, _classPrivateFieldGet(_dbPromise, this));
      }
    }, _callee7, this);
  }));
  return _openDB2.apply(this, arguments);
}

/***/ }),

/***/ "./src/common/services/LogsService.js":
/*!********************************************!*\
  !*** ./src/common/services/LogsService.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _services_IndexedDBService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/IndexedDBService */ "./src/common/services/IndexedDBService.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_2__);
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }



var LogsService = /*#__PURE__*/function () {
  function LogsService() {
    _classCallCheck(this, LogsService);
  }
  return _createClass(LogsService, null, [{
    key: "getLogs",
    value: function () {
      var _getLogs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var logs;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.n) {
            case 0:
              logs = {};
              _context.n = 1;
              return this.getSlicesLogs();
            case 1:
              logs.slices = _context.v;
              _context.n = 2;
              return this.getEvents();
            case 2:
              logs.events = _context.v;
              return _context.a(2, logs);
          }
        }, _callee, this);
      }));
      function getLogs() {
        return _getLogs.apply(this, arguments);
      }
      return getLogs;
    }()
  }, {
    key: "getSlicesLogs",
    value: function () {
      var _getSlicesLogs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
        var slices, nonProxiedUserData, generalSettings, connectionSettings, securitySettings, currentProxy, storageLogs;
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.n) {
            case 0:
              slices = {};
              nonProxiedUserData = {};
              _context2.n = 1;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getGeneralSettings();
            case 1:
              generalSettings = _context2.v;
              _context2.n = 2;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getSettings();
            case 2:
              connectionSettings = _context2.v;
              _context2.n = 3;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getSecuritySettings();
            case 3:
              securitySettings = _context2.v;
              _context2.n = 4;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getCurrentProxy();
            case 4:
              currentProxy = _context2.v;
              _context2.n = 5;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_0___default().getLogs();
            case 5:
              storageLogs = _context2.v;
              if (storageLogs) {
                nonProxiedUserData = storageLogs.nonProxiedUserData || {};
              }
              if (currentProxy) {
                delete currentProxy.username;
                delete currentProxy.password;
              }
              slices.version = _common_browserApi__WEBPACK_IMPORTED_MODULE_2___default().runtime.getManifest().version;
              slices.settings = {
                generalSettings: generalSettings,
                connectionSettings: connectionSettings,
                securitySettings: securitySettings
              };
              slices.nonProxiedInsights = nonProxiedUserData;
              slices.proxySlice = currentProxy || null;
              slices.browserInfo = this.getBrowserInfo() || null;
              slices.deviceInfo = this.getDeviceInfo() || null;
              return _context2.a(2, slices);
          }
        }, _callee2, this);
      }));
      function getSlicesLogs() {
        return _getSlicesLogs.apply(this, arguments);
      }
      return getSlicesLogs;
    }()
  }, {
    key: "getBrowserInfo",
    value: function getBrowserInfo() {
      var userAgent = navigator.userAgent;
      var name = 'Unknown';
      var major = 0;
      var isOutdated = false;
      var isNotOfficiallySupported = false;
      var browsers = [{
        name: 'Edge',
        regex: /Edg\/(\d+)/
      }, {
        name: 'Chrome',
        regex: /Chrome\/(\d+)/
      }, {
        name: 'Firefox',
        regex: /Firefox\/(\d+)/
      }];
      for (var _i = 0, _browsers = browsers; _i < _browsers.length; _i++) {
        var browser = _browsers[_i];
        var match = userAgent.match(browser.regex);
        if (match) {
          name = browser.name;
          major = parseInt(match[1], 10);
          break;
        }
      }
      if (major < 200) {
        isOutdated = true;
      }
      var supportedBrowsers = ['Chrome', 'Firefox', 'Edge'];
      if (!supportedBrowsers.includes(name)) {
        isNotOfficiallySupported = true;
      }
      return {
        isOutdated: isOutdated,
        isNotOfficiallySupported: isNotOfficiallySupported,
        major: major,
        name: name
      };
    }
  }, {
    key: "getDeviceInfo",
    value: function getDeviceInfo() {
      var userAgent = navigator.userAgent;
      var browserInfo = this.getBrowserInfo();
      var osName = 'Unknown';
      if (userAgent.includes('Windows')) {
        osName = 'Windows';
      } else if (userAgent.includes('Mac')) {
        osName = 'MacOS';
      } else if (userAgent.includes('Linux')) {
        osName = 'Linux';
      }
      return {
        browserVersion: "".concat(browserInfo.name, "/").concat(browserInfo.major, ".0.0.0"),
        osName: osName
      };
    }
  }, {
    key: "getEvents",
    value: function () {
      var _getEvents = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
        var dbService, logs;
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              dbService = new _services_IndexedDBService__WEBPACK_IMPORTED_MODULE_1__.IndexedDBService();
              _context3.n = 1;
              return dbService.getAllStores();
            case 1:
              logs = _context3.v;
              if (!(logs.length === 0)) {
                _context3.n = 2;
                break;
              }
              return _context3.a(2, {});
            case 2:
              return _context3.a(2, logs);
          }
        }, _callee3);
      }));
      function getEvents() {
        return _getEvents.apply(this, arguments);
      }
      return getEvents;
    }()
  }, {
    key: "addEvents",
    value: function () {
      var _addEvents = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(type) {
        var data,
          message,
          indexedDBService,
          _args4 = arguments;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              data = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : null;
              message = _args4.length > 2 && _args4[2] !== undefined ? _args4[2] : '';
              indexedDBService = new _services_IndexedDBService__WEBPACK_IMPORTED_MODULE_1__.IndexedDBService(200, 'events');
              _context4.n = 1;
              return indexedDBService.add(type, message, data);
            case 1:
              return _context4.a(2);
          }
        }, _callee4);
      }));
      function addEvents(_x) {
        return _addEvents.apply(this, arguments);
      }
      return addEvents;
    }()
  }, {
    key: "addConnectedEvents",
    value: function () {
      var _addConnectedEvents = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(type) {
        var data,
          indexedDBService,
          _args5 = arguments;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.n) {
            case 0:
              data = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : null;
              indexedDBService = new _services_IndexedDBService__WEBPACK_IMPORTED_MODULE_1__.IndexedDBService(200, 'connected');
              _context5.n = 1;
              return indexedDBService.add(type, null, data);
            case 1:
              return _context5.a(2);
          }
        }, _callee5);
      }));
      function addConnectedEvents(_x2) {
        return _addConnectedEvents.apply(this, arguments);
      }
      return addConnectedEvents;
    }()
  }, {
    key: "clearLogs",
    value: function () {
      var _clearLogs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() {
        var indexedDBService;
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.n) {
            case 0:
              if (false) // removed by dead control flow
{}
              return _context6.a(2);
            case 1:
              indexedDBService = new _services_IndexedDBService__WEBPACK_IMPORTED_MODULE_1__.IndexedDBService();
              _context6.n = 2;
              return indexedDBService.clearData();
            case 2:
              return _context6.a(2);
          }
        }, _callee6);
      }));
      function clearLogs() {
        return _clearLogs.apply(this, arguments);
      }
      return clearLogs;
    }()
  }]);
}();
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LogsService);

/***/ }),

/***/ "./src/common/services/SendMessageService.js":
/*!***************************************************!*\
  !*** ./src/common/services/SendMessageService.js ***!
  \***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   SendMessageService: () => (/* binding */ SendMessageService),
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _services_TranslateService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @services/TranslateService */ "./src/common/services/TranslateService.js");
/* harmony import */ var _services_TranslateService__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_services_TranslateService__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_5__);
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }






var isExtension = typeof window !== 'undefined' && (_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default()) && (_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime);
var SendMessageService = /*#__PURE__*/function () {
  function SendMessageService() {
    _classCallCheck(this, SendMessageService);
  }
  return _createClass(SendMessageService, null, [{
    key: "sendMessage",
    value: function sendMessage(action) {
      var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
      return new Promise(function (resolve, reject) {
        if (!isExtension) return resolve(null);
        (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.LOG_LEVELS.INFO, "Sending message: ".concat(action));
        _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.send_message', {}, action);
        _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime.sendMessage({
          action: action,
          data: data
        }, function (response) {
          if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError) {
            _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.error_send_message', {}, (_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError);
            reject(new Error("Failed to ".concat(action)));
          } else {
            _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.response_send_message', response);
            resolve(response);
          }
        });
      });
    }

    /**
     * Handles logout action
     * @param {function} setError
     */
  }, {
    key: "handleLogout",
    value: (function () {
      var _handleLogout = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(setError) {
        var isFirefox;
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              if (isExtension) {
                _context3.n = 1;
                break;
              }
              return _context3.a(2);
            case 1:
              isFirefox = _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().isFireFoxBrowser();
              _context3.n = 2;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.LOGOUT), {
                method_send: 'handleLogout'
              });
            case 2:
              _context3.n = 3;
              return _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime.sendMessage({
                action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.LOGOUT
              }, /*#__PURE__*/function () {
                var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(response) {
                  var pauseSetting;
                  return _regenerator().w(function (_context2) {
                    while (1) switch (_context2.n) {
                      case 0:
                        if (!(_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError) {
                          _context2.n = 2;
                          break;
                        }
                        _context2.n = 1;
                        return _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.error_handle_logout', {}, (_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError);
                      case 1:
                        setError(_services_TranslateService__WEBPACK_IMPORTED_MODULE_3___default().t('failed_to_logout'));
                      case 2:
                        if (!(isFirefox && response && response.success)) {
                          _context2.n = 7;
                          break;
                        }
                        _context2.n = 3;
                        return _services_StorageService__WEBPACK_IMPORTED_MODULE_5___default().getPauseSetting();
                      case 3:
                        pauseSetting = _context2.v;
                        if (!pauseSetting.pause) {
                          _context2.n = 5;
                          break;
                        }
                        _context2.n = 4;
                        return _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.DELETE_PAUSE), {
                          method_send: 'handleLogout'
                        });
                      case 4:
                        _context2.n = 5;
                        return _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime.sendMessage({
                          action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.DELETE_PAUSE
                        }, /*#__PURE__*/function () {
                          var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(response) {
                            return _regenerator().w(function (_context) {
                              while (1) switch (_context.n) {
                                case 0:
                                  if (!(_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError) {
                                    _context.n = 5;
                                    break;
                                  }
                                  _context.n = 1;
                                  return _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.error_failed_to_send_delete_pause', {}, (_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError);
                                case 1:
                                  if (!isFirefox) {
                                    _context.n = 3;
                                    break;
                                  }
                                  _context.n = 2;
                                  return _services_StorageService__WEBPACK_IMPORTED_MODULE_5___default().saveSelectedCountry('');
                                case 2:
                                  _context.n = 4;
                                  break;
                                case 3:
                                  '';
                                case 4:
                                  _context.n = 6;
                                  break;
                                case 5:
                                  _context.n = 6;
                                  return _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.send_delete_pause', {});
                                case 6:
                                  return _context.a(2);
                              }
                            }, _callee);
                          }));
                          return function (_x3) {
                            return _ref2.apply(this, arguments);
                          };
                        }());
                      case 5:
                        _context2.n = 6;
                        return _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.DISCONNECT), {
                          method_send: 'handleLogout'
                        });
                      case 6:
                        _context2.n = 7;
                        return _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime.sendMessage({
                          action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.DISCONNECT
                        }, function (response) {
                          if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError) {
                            _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.error_disconnect_error', {}, (_common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().runtime).lastError);
                            setError(_services_TranslateService__WEBPACK_IMPORTED_MODULE_3___default().t('failed_to_disconnect'));
                          }
                        });
                      case 7:
                        _context2.n = 8;
                        return _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].clearLogs();
                      case 8:
                        return _context2.a(2);
                    }
                  }, _callee2);
                }));
                return function (_x2) {
                  return _ref.apply(this, arguments);
                };
              }());
            case 3:
              return _context3.a(2);
          }
        }, _callee3);
      }));
      function handleLogout(_x) {
        return _handleLogout.apply(this, arguments);
      }
      return handleLogout;
    }())
  }]);
}();

/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SendMessageService);

/***/ }),

/***/ "./src/common/services/StorageService.js":
/*!***********************************************!*\
  !*** ./src/common/services/StorageService.js ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
var _require = __webpack_require__(/*! ../../sw/constants/storage_keys_constants */ "./src/sw/constants/storage_keys_constants.js"),
  STORAGE_KEYS = _require.STORAGE_KEYS;
var _require2 = __webpack_require__(/*! ../browser_storages/browser_storage */ "./src/common/browser_storages/browser_storage.js"),
  getStorageAsync = _require2.getStorageAsync,
  setStorageAsync = _require2.setStorageAsync,
  removeStorageAsync = _require2.removeStorageAsync;
var _require3 = __webpack_require__(/*! @sw/constants/server_proxy_constants */ "./src/sw/constants/server_proxy_constants.js"),
  SERVER_PROXY = _require3.SERVER_PROXY;
var _require4 = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js"),
  PROXY_STATUS_UPDATED = _require4.PROXY_STATUS_UPDATED,
  PROCESS_DISCONNECT_UPDATED = _require4.PROCESS_DISCONNECT_UPDATED,
  UPDATE_LAST_COUNTRIES = _require4.UPDATE_LAST_COUNTRIES;
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var _require5 = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js"),
  PROXY_STATUSES = _require5.PROXY_STATUSES;
var StorageService = /*#__PURE__*/function () {
  function StorageService() {
    _classCallCheck(this, StorageService);
  }
  return _createClass(StorageService, null, [{
    key: "getAuthData",
    value: (
    /**
     * Retrieves auth-related data from storage
     * @returns {Promise<Object>}
     */
    function () {
      var _getAuthData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        return _regenerator().w(function (_context) {
          while (1) switch (_context.n) {
            case 0:
              return _context.a(2, getStorageAsync([STORAGE_KEYS.JWT, STORAGE_KEYS.REFRESH_TOKEN, STORAGE_KEYS.LOGGED_IN, STORAGE_KEYS.USER_DATA, STORAGE_KEYS.PROXY_STATUS, STORAGE_KEYS.PROXY_ERROR]));
          }
        }, _callee);
      }));
      function getAuthData() {
        return _getAuthData.apply(this, arguments);
      }
      return getAuthData;
    }()
    /**
     * Saves auth data to storage
     * @param {Object} data
     * @returns {Promise<void>}
     */
    )
  }, {
    key: "saveAuthData",
    value: (function () {
      var _saveAuthData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(_ref) {
        var jwt, refresh_token, loggedIn, userData;
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.n) {
            case 0:
              jwt = _ref.jwt, refresh_token = _ref.refresh_token, loggedIn = _ref.loggedIn, userData = _ref.userData;
              _context2.n = 1;
              return setStorageAsync(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, STORAGE_KEYS.JWT, jwt), STORAGE_KEYS.REFRESH_TOKEN, refresh_token), STORAGE_KEYS.LOGGED_IN, loggedIn), STORAGE_KEYS.USER_DATA, userData));
            case 1:
              return _context2.a(2);
          }
        }, _callee2);
      }));
      function saveAuthData(_x) {
        return _saveAuthData.apply(this, arguments);
      }
      return saveAuthData;
    }())
  }, {
    key: "saveUserData",
    value: function () {
      var _saveUserData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(userData) {
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              _context3.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.USER_DATA, userData));
            case 1:
              return _context3.a(2);
          }
        }, _callee3);
      }));
      function saveUserData(_x2) {
        return _saveUserData.apply(this, arguments);
      }
      return saveUserData;
    }()
  }, {
    key: "getUserData",
    value: function () {
      var _getUserData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
        var _yield$getStorageAsyn, userData;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              _context4.n = 1;
              return getStorageAsync([STORAGE_KEYS.USER_DATA]);
            case 1:
              _yield$getStorageAsyn = _context4.v;
              userData = _yield$getStorageAsyn.userData;
              return _context4.a(2, userData || {});
          }
        }, _callee4);
      }));
      function getUserData() {
        return _getUserData.apply(this, arguments);
      }
      return getUserData;
    }()
    /**
     * Clears auth-related data
     * @param {boolean} [clearSettings=false]
     * @returns {Promise<void>}
     */
  }, {
    key: "clearAuthData",
    value: (function () {
      var _clearAuthData = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
        var clearSettings,
          keys,
          _yield$getStorageAsyn2,
          generalSettings,
          _args5 = arguments;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.n) {
            case 0:
              clearSettings = _args5.length > 0 && _args5[0] !== undefined ? _args5[0] : false;
              keys = [STORAGE_KEYS.JWT, STORAGE_KEYS.REFRESH_TOKEN, STORAGE_KEYS.LOGGED_IN, STORAGE_KEYS.USER_DATA, STORAGE_KEYS.PROXY_STATUS, STORAGE_KEYS.PROXY_ERROR, STORAGE_KEYS.PAUSE_SETTING];
              if (!clearSettings) {
                _context5.n = 2;
                break;
              }
              _context5.n = 1;
              return getStorageAsync([STORAGE_KEYS.GENERAL_SETTINGS]);
            case 1:
              _yield$getStorageAsyn2 = _context5.v;
              generalSettings = _yield$getStorageAsyn2.generalSettings;
              if (!(generalSettings !== null && generalSettings !== void 0 && generalSettings.saveSettings)) {
                keys.push(STORAGE_KEYS.GENERAL_SETTINGS, STORAGE_KEYS.SETTINGS, STORAGE_KEYS.SECURITY_SETTINGS);
              }
            case 2:
              _context5.n = 3;
              return removeStorageAsync(keys);
            case 3:
              return _context5.a(2);
          }
        }, _callee5);
      }));
      function clearAuthData() {
        return _clearAuthData.apply(this, arguments);
      }
      return clearAuthData;
    }()
    /**
     * Retrieves specific storage key
     * @param {string} key
     * @returns {Promise<Object>}
     */
    )
  }, {
    key: "getItem",
    value: (function () {
      var _getItem = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(key) {
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.n) {
            case 0:
              return _context6.a(2, getStorageAsync(key));
          }
        }, _callee6);
      }));
      function getItem(_x3) {
        return _getItem.apply(this, arguments);
      }
      return getItem;
    }()
    /**
     * Retrieves general settings from storage
     * @returns {Promise<Object>}
     */
    )
  }, {
    key: "getGeneralSettings",
    value: (function () {
      var _getGeneralSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
        var _yield$getStorageAsyn3, generalSettings;
        return _regenerator().w(function (_context7) {
          while (1) switch (_context7.n) {
            case 0:
              _context7.n = 1;
              return getStorageAsync([STORAGE_KEYS.GENERAL_SETTINGS]);
            case 1:
              _yield$getStorageAsyn3 = _context7.v;
              generalSettings = _yield$getStorageAsyn3.generalSettings;
              return _context7.a(2, generalSettings || {});
          }
        }, _callee7);
      }));
      function getGeneralSettings() {
        return _getGeneralSettings.apply(this, arguments);
      }
      return getGeneralSettings;
    }())
  }, {
    key: "getToken",
    value: function () {
      var _getToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() {
        var _yield$getStorageAsyn4, jwt;
        return _regenerator().w(function (_context8) {
          while (1) switch (_context8.n) {
            case 0:
              _context8.n = 1;
              return getStorageAsync([STORAGE_KEYS.JWT]);
            case 1:
              _yield$getStorageAsyn4 = _context8.v;
              jwt = _yield$getStorageAsyn4.jwt;
              return _context8.a(2, jwt || "");
          }
        }, _callee8);
      }));
      function getToken() {
        return _getToken.apply(this, arguments);
      }
      return getToken;
    }()
  }, {
    key: "existToken",
    value: function () {
      var _existToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9() {
        var _yield$getStorageAsyn5, jwt;
        return _regenerator().w(function (_context9) {
          while (1) switch (_context9.n) {
            case 0:
              _context9.n = 1;
              return getStorageAsync([STORAGE_KEYS.JWT]);
            case 1:
              _yield$getStorageAsyn5 = _context9.v;
              jwt = _yield$getStorageAsyn5.jwt;
              return _context9.a(2, !!jwt);
          }
        }, _callee9);
      }));
      function existToken() {
        return _existToken.apply(this, arguments);
      }
      return existToken;
    }()
  }, {
    key: "getRefreshToken",
    value: function () {
      var _getRefreshToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0() {
        var _yield$getStorageAsyn6, refresh_token;
        return _regenerator().w(function (_context0) {
          while (1) switch (_context0.n) {
            case 0:
              _context0.n = 1;
              return getStorageAsync([STORAGE_KEYS.REFRESH_TOKEN]);
            case 1:
              _yield$getStorageAsyn6 = _context0.v;
              refresh_token = _yield$getStorageAsyn6.refresh_token;
              return _context0.a(2, refresh_token || "");
          }
        }, _callee0);
      }));
      function getRefreshToken() {
        return _getRefreshToken.apply(this, arguments);
      }
      return getRefreshToken;
    }()
  }, {
    key: "getProxyStatus",
    value: function () {
      var _getProxyStatus = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1() {
        var _yield$getStorageAsyn7, proxyStatus;
        return _regenerator().w(function (_context1) {
          while (1) switch (_context1.n) {
            case 0:
              _context1.n = 1;
              return getStorageAsync([STORAGE_KEYS.PROXY_STATUS]);
            case 1:
              _yield$getStorageAsyn7 = _context1.v;
              proxyStatus = _yield$getStorageAsyn7.proxyStatus;
              return _context1.a(2, proxyStatus || PROXY_STATUSES.DISCONNECT);
          }
        }, _callee1);
      }));
      function getProxyStatus() {
        return _getProxyStatus.apply(this, arguments);
      }
      return getProxyStatus;
    }()
  }, {
    key: "getPreviousProxyStatus",
    value: function () {
      var _getPreviousProxyStatus = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10() {
        var _yield$getStorageAsyn8, previousProxyStatus;
        return _regenerator().w(function (_context10) {
          while (1) switch (_context10.n) {
            case 0:
              _context10.n = 1;
              return getStorageAsync([STORAGE_KEYS.PREVIOUS_PROXY_STATUS]);
            case 1:
              _yield$getStorageAsyn8 = _context10.v;
              previousProxyStatus = _yield$getStorageAsyn8.previousProxyStatus;
              return _context10.a(2, previousProxyStatus || PROXY_STATUSES.DISCONNECT);
          }
        }, _callee10);
      }));
      function getPreviousProxyStatus() {
        return _getPreviousProxyStatus.apply(this, arguments);
      }
      return getPreviousProxyStatus;
    }()
  }, {
    key: "saveAuthLinks",
    value: function () {
      var _saveAuthLinks = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(authLinks) {
        return _regenerator().w(function (_context11) {
          while (1) switch (_context11.n) {
            case 0:
              _context11.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.AUTH_LINKS, authLinks));
            case 1:
              return _context11.a(2);
          }
        }, _callee11);
      }));
      function saveAuthLinks(_x4) {
        return _saveAuthLinks.apply(this, arguments);
      }
      return saveAuthLinks;
    }()
  }, {
    key: "saveApiGateways",
    value: function () {
      var _saveApiGateways = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(apiGateways) {
        return _regenerator().w(function (_context12) {
          while (1) switch (_context12.n) {
            case 0:
              _context12.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.API_GATEWAYS, apiGateways));
            case 1:
              return _context12.a(2);
          }
        }, _callee12);
      }));
      function saveApiGateways(_x5) {
        return _saveApiGateways.apply(this, arguments);
      }
      return saveApiGateways;
    }()
  }, {
    key: "saveApiGatewayMain",
    value: function () {
      var _saveApiGatewayMain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13(apiGatewayMain) {
        return _regenerator().w(function (_context13) {
          while (1) switch (_context13.n) {
            case 0:
              _context13.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.API_GATEWAY_MAIN, apiGatewayMain));
            case 1:
              return _context13.a(2);
          }
        }, _callee13);
      }));
      function saveApiGatewayMain(_x6) {
        return _saveApiGatewayMain.apply(this, arguments);
      }
      return saveApiGatewayMain;
    }()
  }, {
    key: "isExistApiGateways",
    value: function () {
      var _isExistApiGateways = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee14() {
        var apiGateways;
        return _regenerator().w(function (_context14) {
          while (1) switch (_context14.n) {
            case 0:
              _context14.n = 1;
              return this.getApiGateways();
            case 1:
              apiGateways = _context14.v;
              return _context14.a(2, apiGateways && apiGateways.length);
          }
        }, _callee14, this);
      }));
      function isExistApiGateways() {
        return _isExistApiGateways.apply(this, arguments);
      }
      return isExistApiGateways;
    }()
  }, {
    key: "getApiGatewayMain",
    value: function () {
      var _getApiGatewayMain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee15() {
        var _yield$getStorageAsyn9, apiGatewayMain;
        return _regenerator().w(function (_context15) {
          while (1) switch (_context15.n) {
            case 0:
              _context15.n = 1;
              return getStorageAsync([STORAGE_KEYS.API_GATEWAY_MAIN]);
            case 1:
              _yield$getStorageAsyn9 = _context15.v;
              apiGatewayMain = _yield$getStorageAsyn9.apiGatewayMain;
              return _context15.a(2, apiGatewayMain || null);
          }
        }, _callee15);
      }));
      function getApiGatewayMain() {
        return _getApiGatewayMain.apply(this, arguments);
      }
      return getApiGatewayMain;
    }()
  }, {
    key: "getApiGateways",
    value: function () {
      var _getApiGateways = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee16() {
        var _yield$getStorageAsyn0, apiGateways;
        return _regenerator().w(function (_context16) {
          while (1) switch (_context16.n) {
            case 0:
              _context16.n = 1;
              return getStorageAsync([STORAGE_KEYS.API_GATEWAYS]);
            case 1:
              _yield$getStorageAsyn0 = _context16.v;
              apiGateways = _yield$getStorageAsyn0.apiGateways;
              return _context16.a(2, apiGateways || []);
          }
        }, _callee16);
      }));
      function getApiGateways() {
        return _getApiGateways.apply(this, arguments);
      }
      return getApiGateways;
    }()
  }, {
    key: "saveAuthDomains",
    value: function () {
      var _saveAuthDomains = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee17(authDomains) {
        return _regenerator().w(function (_context17) {
          while (1) switch (_context17.n) {
            case 0:
              _context17.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.AUTH_DOMAINS, authDomains));
            case 1:
              return _context17.a(2);
          }
        }, _callee17);
      }));
      function saveAuthDomains(_x7) {
        return _saveAuthDomains.apply(this, arguments);
      }
      return saveAuthDomains;
    }()
  }, {
    key: "getAuthDomains",
    value: function () {
      var _getAuthDomains = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee18() {
        var _yield$getStorageAsyn1, authDomains;
        return _regenerator().w(function (_context18) {
          while (1) switch (_context18.n) {
            case 0:
              _context18.n = 1;
              return getStorageAsync([STORAGE_KEYS.AUTH_DOMAINS]);
            case 1:
              _yield$getStorageAsyn1 = _context18.v;
              authDomains = _yield$getStorageAsyn1.authDomains;
              return _context18.a(2, authDomains || []);
          }
        }, _callee18);
      }));
      function getAuthDomains() {
        return _getAuthDomains.apply(this, arguments);
      }
      return getAuthDomains;
    }()
  }, {
    key: "getLoginLink",
    value: function () {
      var _getLoginLink = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee19() {
        var _yield$getStorageAsyn10, authLinks;
        return _regenerator().w(function (_context19) {
          while (1) switch (_context19.n) {
            case 0:
              _context19.n = 1;
              return getStorageAsync([STORAGE_KEYS.AUTH_LINKS]);
            case 1:
              _yield$getStorageAsyn10 = _context19.v;
              authLinks = _yield$getStorageAsyn10.authLinks;
              return _context19.a(2, (authLinks === null || authLinks === void 0 ? void 0 : authLinks.auth) || '');
          }
        }, _callee19);
      }));
      function getLoginLink() {
        return _getLoginLink.apply(this, arguments);
      }
      return getLoginLink;
    }()
  }, {
    key: "getRegisterLink",
    value: function () {
      var _getRegisterLink = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee20() {
        var _yield$getStorageAsyn11, authLinks;
        return _regenerator().w(function (_context20) {
          while (1) switch (_context20.n) {
            case 0:
              _context20.n = 1;
              return getStorageAsync([STORAGE_KEYS.AUTH_LINKS]);
            case 1:
              _yield$getStorageAsyn11 = _context20.v;
              authLinks = _yield$getStorageAsyn11.authLinks;
              return _context20.a(2, (authLinks === null || authLinks === void 0 ? void 0 : authLinks.register) || '');
          }
        }, _callee20);
      }));
      function getRegisterLink() {
        return _getRegisterLink.apply(this, arguments);
      }
      return getRegisterLink;
    }()
  }, {
    key: "getServerDomain",
    value: function () {
      var _getServerDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee21() {
        var _yield$getStorageAsyn12, currentProxy;
        return _regenerator().w(function (_context21) {
          while (1) switch (_context21.n) {
            case 0:
              _context21.n = 1;
              return getStorageAsync([STORAGE_KEYS.CURRENT_PROXY]);
            case 1:
              _yield$getStorageAsyn12 = _context21.v;
              currentProxy = _yield$getStorageAsyn12.currentProxy;
              return _context21.a(2, currentProxy !== null && currentProxy !== void 0 && currentProxy.host ? currentProxy.host : SERVER_PROXY);
          }
        }, _callee21);
      }));
      function getServerDomain() {
        return _getServerDomain.apply(this, arguments);
      }
      return getServerDomain;
    }()
  }, {
    key: "getLastServerDomain",
    value: function () {
      var _getLastServerDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee22() {
        var _yield$getStorageAsyn13, lastServerDomain;
        return _regenerator().w(function (_context22) {
          while (1) switch (_context22.n) {
            case 0:
              _context22.n = 1;
              return getStorageAsync([STORAGE_KEYS.LAST_SERVER_DOMAIN]);
            case 1:
              _yield$getStorageAsyn13 = _context22.v;
              lastServerDomain = _yield$getStorageAsyn13.lastServerDomain;
              return _context22.a(2, lastServerDomain ? lastServerDomain : "");
          }
        }, _callee22);
      }));
      function getLastServerDomain() {
        return _getLastServerDomain.apply(this, arguments);
      }
      return getLastServerDomain;
    }()
  }, {
    key: "saveLastServerDomain",
    value: function () {
      var _saveLastServerDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee23(lastServerDomain) {
        return _regenerator().w(function (_context23) {
          while (1) switch (_context23.n) {
            case 0:
              _context23.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.LAST_SERVER_DOMAIN, lastServerDomain));
            case 1:
              return _context23.a(2);
          }
        }, _callee23);
      }));
      function saveLastServerDomain(_x8) {
        return _saveLastServerDomain.apply(this, arguments);
      }
      return saveLastServerDomain;
    }()
  }, {
    key: "getPrivateLink",
    value: function () {
      var _getPrivateLink = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee24(type) {
        var _yield$getStorageAsyn14, privateLinks;
        return _regenerator().w(function (_context24) {
          while (1) switch (_context24.n) {
            case 0:
              _context24.n = 1;
              return getStorageAsync([STORAGE_KEYS.PRIVATE_LINKS]);
            case 1:
              _yield$getStorageAsyn14 = _context24.v;
              privateLinks = _yield$getStorageAsyn14.privateLinks;
              return _context24.a(2, (privateLinks === null || privateLinks === void 0 ? void 0 : privateLinks[type]) || '');
          }
        }, _callee24);
      }));
      function getPrivateLink(_x9) {
        return _getPrivateLink.apply(this, arguments);
      }
      return getPrivateLink;
    }()
    /**
     * Saves general settings to storage
     * @param {Object} settings
     * @returns {Promise<void>}
     */
  }, {
    key: "saveGeneralSettings",
    value: (function () {
      var _saveGeneralSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee25(settings) {
        return _regenerator().w(function (_context25) {
          while (1) switch (_context25.n) {
            case 0:
              _context25.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.GENERAL_SETTINGS, settings));
            case 1:
              return _context25.a(2);
          }
        }, _callee25);
      }));
      function saveGeneralSettings(_x0) {
        return _saveGeneralSettings.apply(this, arguments);
      }
      return saveGeneralSettings;
    }()
    /**
     * Retrieves all settings (generalSettings and settings and securitySettings) for export
     * @returns {Promise<Object>}
     */
    )
  }, {
    key: "getAllSettings",
    value: (function () {
      var _getAllSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee26() {
        return _regenerator().w(function (_context26) {
          while (1) switch (_context26.n) {
            case 0:
              return _context26.a(2, getStorageAsync([STORAGE_KEYS.SETTINGS, STORAGE_KEYS.GENERAL_SETTINGS, STORAGE_KEYS.SECURITY_SETTINGS]));
          }
        }, _callee26);
      }));
      function getAllSettings() {
        return _getAllSettings.apply(this, arguments);
      }
      return getAllSettings;
    }()
    /**
     * Imports settings (generalSettings and settings)
     * @param {Object} data
     * @returns {Promise<void>}
     */
    )
  }, {
    key: "importSettings",
    value: (function () {
      var _importSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee27(_ref2) {
        var settings, generalSettings, securitySettings;
        return _regenerator().w(function (_context27) {
          while (1) switch (_context27.n) {
            case 0:
              settings = _ref2.settings, generalSettings = _ref2.generalSettings, securitySettings = _ref2.securitySettings;
              _context27.n = 1;
              return setStorageAsync(_defineProperty(_defineProperty(_defineProperty({}, STORAGE_KEYS.SETTINGS, settings || {}), STORAGE_KEYS.GENERAL_SETTINGS, generalSettings || {}), STORAGE_KEYS.SECURITY_SETTINGS, securitySettings || {}));
            case 1:
              return _context27.a(2);
          }
        }, _callee27);
      }));
      function importSettings(_x1) {
        return _importSettings.apply(this, arguments);
      }
      return importSettings;
    }())
  }, {
    key: "setStorageAsyncPromise",
    value: function () {
      var _setStorageAsyncPromise = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee28(data) {
        return _regenerator().w(function (_context28) {
          while (1) switch (_context28.n) {
            case 0:
              return _context28.a(2, setStorageAsync.apply(void 0, _toConsumableArray(data)));
          }
        }, _callee28);
      }));
      function setStorageAsyncPromise(_x10) {
        return _setStorageAsyncPromise.apply(this, arguments);
      }
      return setStorageAsyncPromise;
    }()
    /**
     * Retrieves connection settings from storage
     * @returns {Promise<Object>}
     */
  }, {
    key: "getSettings",
    value: (function () {
      var _getSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee29() {
        var _yield$getStorageAsyn15, settings;
        return _regenerator().w(function (_context29) {
          while (1) switch (_context29.n) {
            case 0:
              _context29.n = 1;
              return getStorageAsync([STORAGE_KEYS.SETTINGS]);
            case 1:
              _yield$getStorageAsyn15 = _context29.v;
              settings = _yield$getStorageAsyn15.settings;
              return _context29.a(2, settings || {});
          }
        }, _callee29);
      }));
      function getSettings() {
        return _getSettings.apply(this, arguments);
      }
      return getSettings;
    }())
  }, {
    key: "getSettingsKillSwitch",
    value: function () {
      var _getSettingsKillSwitch = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee30() {
        var _yield$getStorageAsyn16, settings;
        return _regenerator().w(function (_context30) {
          while (1) switch (_context30.n) {
            case 0:
              _context30.n = 1;
              return getStorageAsync([STORAGE_KEYS.SETTINGS]);
            case 1:
              _yield$getStorageAsyn16 = _context30.v;
              settings = _yield$getStorageAsyn16.settings;
              return _context30.a(2, (settings === null || settings === void 0 ? void 0 : settings.killSwitch) || false);
          }
        }, _callee30);
      }));
      function getSettingsKillSwitch() {
        return _getSettingsKillSwitch.apply(this, arguments);
      }
      return getSettingsKillSwitch;
    }()
    /**
     * Saves connection settings to storage
     * @param {Object} settings
     * @returns {Promise<void>}
     */
  }, {
    key: "saveSettings",
    value: (function () {
      var _saveSettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee31(settings) {
        return _regenerator().w(function (_context31) {
          while (1) switch (_context31.n) {
            case 0:
              _context31.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.SETTINGS, settings));
            case 1:
              return _context31.a(2);
          }
        }, _callee31);
      }));
      function saveSettings(_x11) {
        return _saveSettings.apply(this, arguments);
      }
      return saveSettings;
    }()
    /**
     * Retrieves security settings from storage
     * @returns {Promise<Object>}
     */
    )
  }, {
    key: "getSecuritySettings",
    value: (function () {
      var _getSecuritySettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee32() {
        var _yield$getStorageAsyn17, securitySettings;
        return _regenerator().w(function (_context32) {
          while (1) switch (_context32.n) {
            case 0:
              _context32.n = 1;
              return getStorageAsync([STORAGE_KEYS.SECURITY_SETTINGS]);
            case 1:
              _yield$getStorageAsyn17 = _context32.v;
              securitySettings = _yield$getStorageAsyn17.securitySettings;
              return _context32.a(2, securitySettings || {});
          }
        }, _callee32);
      }));
      function getSecuritySettings() {
        return _getSecuritySettings.apply(this, arguments);
      }
      return getSecuritySettings;
    }())
  }, {
    key: "getCurrentProxy",
    value: function () {
      var _getCurrentProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee33() {
        var _yield$getStorageAsyn18, currentProxy;
        return _regenerator().w(function (_context33) {
          while (1) switch (_context33.n) {
            case 0:
              _context33.n = 1;
              return getStorageAsync([STORAGE_KEYS.CURRENT_PROXY]);
            case 1:
              _yield$getStorageAsyn18 = _context33.v;
              currentProxy = _yield$getStorageAsyn18.currentProxy;
              return _context33.a(2, currentProxy || {});
          }
        }, _callee33);
      }));
      function getCurrentProxy() {
        return _getCurrentProxy.apply(this, arguments);
      }
      return getCurrentProxy;
    }()
  }, {
    key: "getPauseSetting",
    value: function () {
      var _getPauseSetting = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee34() {
        var _yield$getStorageAsyn19, pauseSetting;
        return _regenerator().w(function (_context34) {
          while (1) switch (_context34.n) {
            case 0:
              _context34.n = 1;
              return getStorageAsync([STORAGE_KEYS.PAUSE_SETTING]);
            case 1:
              _yield$getStorageAsyn19 = _context34.v;
              pauseSetting = _yield$getStorageAsyn19.pauseSetting;
              return _context34.a(2, pauseSetting || {});
          }
        }, _callee34);
      }));
      function getPauseSetting() {
        return _getPauseSetting.apply(this, arguments);
      }
      return getPauseSetting;
    }()
  }, {
    key: "getCitiesList",
    value: function () {
      var _getCitiesList = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee35() {
        var _yield$getStorageAsyn20, apiCities;
        return _regenerator().w(function (_context35) {
          while (1) switch (_context35.n) {
            case 0:
              _context35.n = 1;
              return getStorageAsync([STORAGE_KEYS.CITIES_LIST]);
            case 1:
              _yield$getStorageAsyn20 = _context35.v;
              apiCities = _yield$getStorageAsyn20.apiCities;
              return _context35.a(2, apiCities || []);
          }
        }, _callee35);
      }));
      function getCitiesList() {
        return _getCitiesList.apply(this, arguments);
      }
      return getCitiesList;
    }()
  }, {
    key: "saveCitiesList",
    value: function () {
      var _saveCitiesList = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee36(cities) {
        return _regenerator().w(function (_context36) {
          while (1) switch (_context36.n) {
            case 0:
              _context36.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.CITIES_LIST, cities));
            case 1:
              return _context36.a(2);
          }
        }, _callee36);
      }));
      function saveCitiesList(_x12) {
        return _saveCitiesList.apply(this, arguments);
      }
      return saveCitiesList;
    }()
  }, {
    key: "savePauseSetting",
    value: function () {
      var _savePauseSetting = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee37(settings) {
        return _regenerator().w(function (_context37) {
          while (1) switch (_context37.n) {
            case 0:
              _context37.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.PAUSE_SETTING, settings));
            case 1:
              return _context37.a(2);
          }
        }, _callee37);
      }));
      function savePauseSetting(_x13) {
        return _savePauseSetting.apply(this, arguments);
      }
      return savePauseSetting;
    }()
    /**
     * Saves security settings to storage
     * @param {Object} settings
     * @returns {Promise<void>}
     */
  }, {
    key: "saveSecuritySettings",
    value: (function () {
      var _saveSecuritySettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee38(settings) {
        return _regenerator().w(function (_context38) {
          while (1) switch (_context38.n) {
            case 0:
              _context38.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.SECURITY_SETTINGS, settings));
            case 1:
              return _context38.a(2);
          }
        }, _callee38);
      }));
      function saveSecuritySettings(_x14) {
        return _saveSecuritySettings.apply(this, arguments);
      }
      return saveSecuritySettings;
    }()
    /**
     * Saves current proxy to storage
     * @param {Object} proxy
     * @returns {Promise<void>}
     */
    )
  }, {
    key: "saveCurrentProxy",
    value: (function () {
      var _saveCurrentProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee39(proxy) {
        return _regenerator().w(function (_context39) {
          while (1) switch (_context39.n) {
            case 0:
              _context39.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.CURRENT_PROXY, proxy));
            case 1:
              return _context39.a(2);
          }
        }, _callee39);
      }));
      function saveCurrentProxy(_x15) {
        return _saveCurrentProxy.apply(this, arguments);
      }
      return saveCurrentProxy;
    }()
    /**
     * Saves proxy-related data to storage
     * @param {Object} data
     * @returns {Promise<void>}
     */
    )
  }, {
    key: "saveProxySettings",
    value: (function () {
      var _saveProxySettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee40(_ref3) {
        var proxyStatus, proxyError, currentProxy;
        return _regenerator().w(function (_context40) {
          while (1) switch (_context40.n) {
            case 0:
              proxyStatus = _ref3.proxyStatus, proxyError = _ref3.proxyError, currentProxy = _ref3.currentProxy;
              _context40.n = 1;
              return setStorageAsync(_defineProperty(_defineProperty(_defineProperty({}, STORAGE_KEYS.PROXY_STATUS, proxyStatus), STORAGE_KEYS.PROXY_ERROR, proxyError), STORAGE_KEYS.CURRENT_PROXY, currentProxy));
            case 1:
              if (browserApi.isFireFoxBrowser()) {
                void browserApi.runtime.sendMessage({
                  type: PROXY_STATUS_UPDATED,
                  proxyStatus: proxyStatus
                })["catch"](function () {});
              }
            case 2:
              return _context40.a(2);
          }
        }, _callee40);
      }));
      function saveProxySettings(_x16) {
        return _saveProxySettings.apply(this, arguments);
      }
      return saveProxySettings;
    }())
  }, {
    key: "saveProxyStatus",
    value: function () {
      var _saveProxyStatus = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee41(proxyStatus) {
        return _regenerator().w(function (_context41) {
          while (1) switch (_context41.n) {
            case 0:
              _context41.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.PROXY_STATUS, proxyStatus));
            case 1:
              if (browserApi.isFireFoxBrowser()) {
                void browserApi.runtime.sendMessage({
                  type: PROXY_STATUS_UPDATED,
                  proxyStatus: proxyStatus
                })["catch"](function () {});
              }
            case 2:
              return _context41.a(2);
          }
        }, _callee41);
      }));
      function saveProxyStatus(_x17) {
        return _saveProxyStatus.apply(this, arguments);
      }
      return saveProxyStatus;
    }()
  }, {
    key: "savePreviousProxyStatus",
    value: function () {
      var _savePreviousProxyStatus = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee42(previousProxyStatus) {
        return _regenerator().w(function (_context42) {
          while (1) switch (_context42.n) {
            case 0:
              _context42.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.PREVIOUS_PROXY_STATUS, previousProxyStatus));
            case 1:
              return _context42.a(2);
          }
        }, _callee42);
      }));
      function savePreviousProxyStatus(_x18) {
        return _savePreviousProxyStatus.apply(this, arguments);
      }
      return savePreviousProxyStatus;
    }()
  }, {
    key: "saveProxyError",
    value: function () {
      var _saveProxyError = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee43(proxyError) {
        return _regenerator().w(function (_context43) {
          while (1) switch (_context43.n) {
            case 0:
              _context43.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.PROXY_ERROR, proxyError));
            case 1:
              return _context43.a(2);
          }
        }, _callee43);
      }));
      function saveProxyError(_x19) {
        return _saveProxyError.apply(this, arguments);
      }
      return saveProxyError;
    }()
    /**
     * Retrieves proxy-related data from storage
     * @returns {Promise<Object>}
     */
  }, {
    key: "getProxySettings",
    value: (function () {
      var _getProxySettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee44() {
        var _yield$getStorageAsyn21, proxyStatus, proxyError, currentProxy;
        return _regenerator().w(function (_context44) {
          while (1) switch (_context44.n) {
            case 0:
              _context44.n = 1;
              return getStorageAsync([STORAGE_KEYS.PROXY_STATUS, STORAGE_KEYS.PROXY_ERROR, STORAGE_KEYS.CURRENT_PROXY]);
            case 1:
              _yield$getStorageAsyn21 = _context44.v;
              proxyStatus = _yield$getStorageAsyn21.proxyStatus;
              proxyError = _yield$getStorageAsyn21.proxyError;
              currentProxy = _yield$getStorageAsyn21.currentProxy;
              return _context44.a(2, {
                proxyStatus: proxyStatus || PROXY_STATUSES.DISCONNECT,
                proxyError: proxyError || null,
                currentProxy: currentProxy || null
              });
          }
        }, _callee44);
      }));
      function getProxySettings() {
        return _getProxySettings.apply(this, arguments);
      }
      return getProxySettings;
    }())
  }, {
    key: "clearProxySettings",
    value: function () {
      var _clearProxySettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee45() {
        return _regenerator().w(function (_context45) {
          while (1) switch (_context45.n) {
            case 0:
              _context45.n = 1;
              return setStorageAsync(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, STORAGE_KEYS.PROXY_STATUS, PROXY_STATUSES.DISCONNECT), STORAGE_KEYS.PROXY_ERROR, null), STORAGE_KEYS.CURRENT_PROXY, null), STORAGE_KEYS.SELECTED_COUNTRY, ''));
            case 1:
              if (browserApi.isFireFoxBrowser()) {
                void browserApi.runtime.sendMessage({
                  type: PROXY_STATUS_UPDATED,
                  proxyStatus: PROXY_STATUSES.DISCONNECT
                })["catch"](function () {});
              }
            case 2:
              return _context45.a(2);
          }
        }, _callee45);
      }));
      function clearProxySettings() {
        return _clearProxySettings.apply(this, arguments);
      }
      return clearProxySettings;
    }()
  }, {
    key: "saveSelectedCountry",
    value: function () {
      var _saveSelectedCountry = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee46(country) {
        return _regenerator().w(function (_context46) {
          while (1) switch (_context46.n) {
            case 0:
              _context46.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.SELECTED_COUNTRY, country));
            case 1:
              return _context46.a(2);
          }
        }, _callee46);
      }));
      function saveSelectedCountry(_x20) {
        return _saveSelectedCountry.apply(this, arguments);
      }
      return saveSelectedCountry;
    }()
  }, {
    key: "saveSelectedAutoConnectCountry",
    value: function () {
      var _saveSelectedAutoConnectCountry = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee47(country) {
        var settings;
        return _regenerator().w(function (_context47) {
          while (1) switch (_context47.n) {
            case 0:
              _context47.n = 1;
              return StorageService.getSettings();
            case 1:
              settings = _context47.v;
              settings.selectedAutoConnectCountry = country;
              _context47.n = 2;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.SETTINGS, settings));
            case 2:
              return _context47.a(2);
          }
        }, _callee47);
      }));
      function saveSelectedAutoConnectCountry(_x21) {
        return _saveSelectedAutoConnectCountry.apply(this, arguments);
      }
      return saveSelectedAutoConnectCountry;
    }()
  }, {
    key: "saveSelectedCity",
    value: function () {
      var _saveSelectedCity = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee48(city) {
        return _regenerator().w(function (_context48) {
          while (1) switch (_context48.n) {
            case 0:
              _context48.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.SELECTED_CITY, city));
            case 1:
              return _context48.a(2);
          }
        }, _callee48);
      }));
      function saveSelectedCity(_x22) {
        return _saveSelectedCity.apply(this, arguments);
      }
      return saveSelectedCity;
    }()
  }, {
    key: "clearSelectedCity",
    value: function () {
      var _clearSelectedCity = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee49() {
        return _regenerator().w(function (_context49) {
          while (1) switch (_context49.n) {
            case 0:
              _context49.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.SELECTED_CITY, ""));
            case 1:
              return _context49.a(2);
          }
        }, _callee49);
      }));
      function clearSelectedCity() {
        return _clearSelectedCity.apply(this, arguments);
      }
      return clearSelectedCity;
    }()
  }, {
    key: "getSelectedCity",
    value: function () {
      var _getSelectedCity = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee50() {
        var _yield$getStorageAsyn22, selectedCity;
        return _regenerator().w(function (_context50) {
          while (1) switch (_context50.n) {
            case 0:
              _context50.n = 1;
              return getStorageAsync([STORAGE_KEYS.SELECTED_CITY]);
            case 1:
              _yield$getStorageAsyn22 = _context50.v;
              selectedCity = _yield$getStorageAsyn22.selectedCity;
              return _context50.a(2, selectedCity || '');
          }
        }, _callee50);
      }));
      function getSelectedCity() {
        return _getSelectedCity.apply(this, arguments);
      }
      return getSelectedCity;
    }()
  }, {
    key: "getSelectedCountry",
    value: function () {
      var _getSelectedCountry = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee51() {
        var _yield$getStorageAsyn23, selectedCountry;
        return _regenerator().w(function (_context51) {
          while (1) switch (_context51.n) {
            case 0:
              _context51.n = 1;
              return getStorageAsync([STORAGE_KEYS.SELECTED_COUNTRY]);
            case 1:
              _yield$getStorageAsyn23 = _context51.v;
              selectedCountry = _yield$getStorageAsyn23.selectedCountry;
              return _context51.a(2, selectedCountry || '');
          }
        }, _callee51);
      }));
      function getSelectedCountry() {
        return _getSelectedCountry.apply(this, arguments);
      }
      return getSelectedCountry;
    }()
  }, {
    key: "getUniqueAppId",
    value: function () {
      var _getUniqueAppId = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee52() {
        var _yield$getStorageAsyn24, appId;
        return _regenerator().w(function (_context52) {
          while (1) switch (_context52.n) {
            case 0:
              _context52.n = 1;
              return getStorageAsync([STORAGE_KEYS.APP_ID]);
            case 1:
              _yield$getStorageAsyn24 = _context52.v;
              appId = _yield$getStorageAsyn24.appId;
              return _context52.a(2, appId || '');
          }
        }, _callee52);
      }));
      function getUniqueAppId() {
        return _getUniqueAppId.apply(this, arguments);
      }
      return getUniqueAppId;
    }()
  }, {
    key: "saveUniqueAppId",
    value: function () {
      var _saveUniqueAppId = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee53(appId) {
        return _regenerator().w(function (_context53) {
          while (1) switch (_context53.n) {
            case 0:
              _context53.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.APP_ID, appId));
            case 1:
              return _context53.a(2);
          }
        }, _callee53);
      }));
      function saveUniqueAppId(_x23) {
        return _saveUniqueAppId.apply(this, arguments);
      }
      return saveUniqueAppId;
    }()
  }, {
    key: "getDebugLog",
    value: function () {
      var _getDebugLog = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee54() {
        var _yield$getStorageAsyn25, debugLog;
        return _regenerator().w(function (_context54) {
          while (1) switch (_context54.n) {
            case 0:
              _context54.n = 1;
              return getStorageAsync([STORAGE_KEYS.DEBUG_LOG]);
            case 1:
              _yield$getStorageAsyn25 = _context54.v;
              debugLog = _yield$getStorageAsyn25.debugLog;
              return _context54.a(2, debugLog || false);
          }
        }, _callee54);
      }));
      function getDebugLog() {
        return _getDebugLog.apply(this, arguments);
      }
      return getDebugLog;
    }()
  }, {
    key: "getBlockRequest",
    value: function () {
      var _getBlockRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee55() {
        var _yield$getStorageAsyn26, blockRequest;
        return _regenerator().w(function (_context55) {
          while (1) switch (_context55.n) {
            case 0:
              _context55.n = 1;
              return getStorageAsync([STORAGE_KEYS.BLOCK_REQUEST]);
            case 1:
              _yield$getStorageAsyn26 = _context55.v;
              blockRequest = _yield$getStorageAsyn26.blockRequest;
              return _context55.a(2, blockRequest || false);
          }
        }, _callee55);
      }));
      function getBlockRequest() {
        return _getBlockRequest.apply(this, arguments);
      }
      return getBlockRequest;
    }()
  }, {
    key: "saveBlockRequest",
    value: function () {
      var _saveBlockRequest = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee56(blockRequest) {
        return _regenerator().w(function (_context56) {
          while (1) switch (_context56.n) {
            case 0:
              _context56.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.BLOCK_REQUEST, blockRequest));
            case 1:
              return _context56.a(2);
          }
        }, _callee56);
      }));
      function saveBlockRequest(_x24) {
        return _saveBlockRequest.apply(this, arguments);
      }
      return saveBlockRequest;
    }()
  }, {
    key: "savePing",
    value: function () {
      var _savePing = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee57(ping) {
        return _regenerator().w(function (_context57) {
          while (1) switch (_context57.n) {
            case 0:
              _context57.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.PING, ping));
            case 1:
              return _context57.a(2);
          }
        }, _callee57);
      }));
      function savePing(_x25) {
        return _savePing.apply(this, arguments);
      }
      return savePing;
    }()
  }, {
    key: "getPing",
    value: function () {
      var _getPing = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee58() {
        var _yield$getStorageAsyn27, ping;
        return _regenerator().w(function (_context58) {
          while (1) switch (_context58.n) {
            case 0:
              _context58.n = 1;
              return getStorageAsync([STORAGE_KEYS.PING]);
            case 1:
              _yield$getStorageAsyn27 = _context58.v;
              ping = _yield$getStorageAsyn27.ping;
              return _context58.a(2, ping || false);
          }
        }, _callee58);
      }));
      function getPing() {
        return _getPing.apply(this, arguments);
      }
      return getPing;
    }()
  }, {
    key: "saveLoadConnectStatus",
    value: function () {
      var _saveLoadConnectStatus = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee59(loadConnectStatus) {
        return _regenerator().w(function (_context59) {
          while (1) switch (_context59.n) {
            case 0:
              _context59.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.LOAD_CONNECT_STATUS, loadConnectStatus));
            case 1:
              return _context59.a(2);
          }
        }, _callee59);
      }));
      function saveLoadConnectStatus(_x26) {
        return _saveLoadConnectStatus.apply(this, arguments);
      }
      return saveLoadConnectStatus;
    }()
  }, {
    key: "getLoadConnectStatus",
    value: function () {
      var _getLoadConnectStatus = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee60() {
        var _yield$getStorageAsyn28, loadConnectStatus;
        return _regenerator().w(function (_context60) {
          while (1) switch (_context60.n) {
            case 0:
              _context60.n = 1;
              return getStorageAsync([STORAGE_KEYS.LOAD_CONNECT_STATUS]);
            case 1:
              _yield$getStorageAsyn28 = _context60.v;
              loadConnectStatus = _yield$getStorageAsyn28.loadConnectStatus;
              return _context60.a(2, loadConnectStatus || false);
          }
        }, _callee60);
      }));
      function getLoadConnectStatus() {
        return _getLoadConnectStatus.apply(this, arguments);
      }
      return getLoadConnectStatus;
    }()
  }, {
    key: "saveCancelConnect",
    value: function () {
      var _saveCancelConnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee61(cancelConnect) {
        return _regenerator().w(function (_context61) {
          while (1) switch (_context61.n) {
            case 0:
              _context61.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.CANCEL_CONNECT, cancelConnect));
            case 1:
              return _context61.a(2);
          }
        }, _callee61);
      }));
      function saveCancelConnect(_x27) {
        return _saveCancelConnect.apply(this, arguments);
      }
      return saveCancelConnect;
    }()
  }, {
    key: "getCancelConnect",
    value: function () {
      var _getCancelConnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee62() {
        var _yield$getStorageAsyn29, cancelConnect;
        return _regenerator().w(function (_context62) {
          while (1) switch (_context62.n) {
            case 0:
              _context62.n = 1;
              return getStorageAsync([STORAGE_KEYS.CANCEL_CONNECT]);
            case 1:
              _yield$getStorageAsyn29 = _context62.v;
              cancelConnect = _yield$getStorageAsyn29.cancelConnect;
              return _context62.a(2, cancelConnect || false);
          }
        }, _callee62);
      }));
      function getCancelConnect() {
        return _getCancelConnect.apply(this, arguments);
      }
      return getCancelConnect;
    }()
  }, {
    key: "saveForceCancelConnect",
    value: function () {
      var _saveForceCancelConnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee63(forceCancelConnect) {
        return _regenerator().w(function (_context63) {
          while (1) switch (_context63.n) {
            case 0:
              _context63.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.FORCE_CANCEL_CONNECT, forceCancelConnect));
            case 1:
              return _context63.a(2);
          }
        }, _callee63);
      }));
      function saveForceCancelConnect(_x28) {
        return _saveForceCancelConnect.apply(this, arguments);
      }
      return saveForceCancelConnect;
    }()
  }, {
    key: "getForceCancelConnect",
    value: function () {
      var _getForceCancelConnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee64() {
        var _yield$getStorageAsyn30, forceCancelConnect;
        return _regenerator().w(function (_context64) {
          while (1) switch (_context64.n) {
            case 0:
              _context64.n = 1;
              return getStorageAsync([STORAGE_KEYS.FORCE_CANCEL_CONNECT]);
            case 1:
              _yield$getStorageAsyn30 = _context64.v;
              forceCancelConnect = _yield$getStorageAsyn30.forceCancelConnect;
              return _context64.a(2, forceCancelConnect || false);
          }
        }, _callee64);
      }));
      function getForceCancelConnect() {
        return _getForceCancelConnect.apply(this, arguments);
      }
      return getForceCancelConnect;
    }()
  }, {
    key: "savePrivateLink",
    value: function () {
      var _savePrivateLink = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee65(type, link) {
        return _regenerator().w(function (_context65) {
          while (1) switch (_context65.n) {
            case 0:
              _context65.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.PRIVATE_LINKS, _defineProperty({}, type, link)));
            case 1:
              return _context65.a(2);
          }
        }, _callee65);
      }));
      function savePrivateLink(_x29, _x30) {
        return _savePrivateLink.apply(this, arguments);
      }
      return savePrivateLink;
    }()
  }, {
    key: "getLastCountries",
    value: function () {
      var _getLastCountries = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee66() {
        var _yield$getStorageAsyn31, lastCountries;
        return _regenerator().w(function (_context66) {
          while (1) switch (_context66.n) {
            case 0:
              _context66.n = 1;
              return getStorageAsync([STORAGE_KEYS.LAST_COUNTRIES]);
            case 1:
              _yield$getStorageAsyn31 = _context66.v;
              lastCountries = _yield$getStorageAsyn31.lastCountries;
              return _context66.a(2, lastCountries || []);
          }
        }, _callee66);
      }));
      function getLastCountries() {
        return _getLastCountries.apply(this, arguments);
      }
      return getLastCountries;
    }()
  }, {
    key: "addToLastCountries",
    value: function () {
      var _addToLastCountries = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee67(country) {
        var _yield$getStorageAsyn32, lastCountries;
        return _regenerator().w(function (_context67) {
          while (1) switch (_context67.n) {
            case 0:
              _context67.n = 1;
              return getStorageAsync([STORAGE_KEYS.LAST_COUNTRIES]);
            case 1:
              _yield$getStorageAsyn32 = _context67.v;
              lastCountries = _yield$getStorageAsyn32.lastCountries;
              lastCountries = Array.isArray(lastCountries) ? lastCountries : [];
              if (lastCountries.includes(country)) {
                lastCountries = lastCountries.filter(function (item) {
                  return item !== country;
                });
              }
              lastCountries.unshift(country);
              _context67.n = 2;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.LAST_COUNTRIES, lastCountries));
            case 2:
              if (browserApi.isFireFoxBrowser()) {
                void browserApi.runtime.sendMessage({
                  type: UPDATE_LAST_COUNTRIES,
                  lastCountries: lastCountries
                })["catch"](function () {});
              }
            case 3:
              return _context67.a(2);
          }
        }, _callee67);
      }));
      function addToLastCountries(_x31) {
        return _addToLastCountries.apply(this, arguments);
      }
      return addToLastCountries;
    }()
  }, {
    key: "saveLogs",
    value: function () {
      var _saveLogs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee68(type, logs) {
        var currentLogs, updatedLogs, _t;
        return _regenerator().w(function (_context68) {
          while (1) switch (_context68.n) {
            case 0:
              _context68.n = 1;
              return this.getLogs();
            case 1:
              _t = _context68.v;
              if (_t) {
                _context68.n = 2;
                break;
              }
              _t = {};
            case 2:
              currentLogs = _t;
              updatedLogs = _objectSpread(_objectSpread({}, currentLogs), {}, _defineProperty({}, type, logs));
              _context68.n = 3;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.LOGS, updatedLogs));
            case 3:
              return _context68.a(2);
          }
        }, _callee68, this);
      }));
      function saveLogs(_x32, _x33) {
        return _saveLogs.apply(this, arguments);
      }
      return saveLogs;
    }()
  }, {
    key: "getLogs",
    value: function () {
      var _getLogs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee69() {
        var _yield$getStorageAsyn33, logs;
        return _regenerator().w(function (_context69) {
          while (1) switch (_context69.n) {
            case 0:
              _context69.n = 1;
              return getStorageAsync([STORAGE_KEYS.LOGS]);
            case 1:
              _yield$getStorageAsyn33 = _context69.v;
              logs = _yield$getStorageAsyn33.logs;
              return _context69.a(2, logs || false);
          }
        }, _callee69);
      }));
      function getLogs() {
        return _getLogs.apply(this, arguments);
      }
      return getLogs;
    }()
  }, {
    key: "saveAnotherExtension",
    value: function () {
      var _saveAnotherExtension = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee70(anotherExtension) {
        return _regenerator().w(function (_context70) {
          while (1) switch (_context70.n) {
            case 0:
              _context70.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.ANOTHER_EXTENSION_ACTIVE, anotherExtension));
            case 1:
              return _context70.a(2);
          }
        }, _callee70);
      }));
      function saveAnotherExtension(_x34) {
        return _saveAnotherExtension.apply(this, arguments);
      }
      return saveAnotherExtension;
    }()
  }, {
    key: "getAnotherExtension",
    value: function () {
      var _getAnotherExtension = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee71() {
        var _yield$getStorageAsyn34, anotherExtensionActive;
        return _regenerator().w(function (_context71) {
          while (1) switch (_context71.n) {
            case 0:
              _context71.n = 1;
              return getStorageAsync([STORAGE_KEYS.ANOTHER_EXTENSION_ACTIVE]);
            case 1:
              _yield$getStorageAsyn34 = _context71.v;
              anotherExtensionActive = _yield$getStorageAsyn34.anotherExtensionActive;
              return _context71.a(2, anotherExtensionActive || false);
          }
        }, _callee71);
      }));
      function getAnotherExtension() {
        return _getAnotherExtension.apply(this, arguments);
      }
      return getAnotherExtension;
    }()
  }, {
    key: "saveDisabledPermissionsExtension",
    value: function () {
      var _saveDisabledPermissionsExtension = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee72(disabledPermissionsExtension) {
        return _regenerator().w(function (_context72) {
          while (1) switch (_context72.n) {
            case 0:
              _context72.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.DISABLED_PERMISSIONS_EXTENSION, disabledPermissionsExtension));
            case 1:
              return _context72.a(2);
          }
        }, _callee72);
      }));
      function saveDisabledPermissionsExtension(_x35) {
        return _saveDisabledPermissionsExtension.apply(this, arguments);
      }
      return saveDisabledPermissionsExtension;
    }()
  }, {
    key: "getDisabledPermissionsExtension",
    value: function () {
      var _getDisabledPermissionsExtension = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee73() {
        var _yield$getStorageAsyn35, disabledPermissionsExtension;
        return _regenerator().w(function (_context73) {
          while (1) switch (_context73.n) {
            case 0:
              _context73.n = 1;
              return getStorageAsync([STORAGE_KEYS.DISABLED_PERMISSIONS_EXTENSION]);
            case 1:
              _yield$getStorageAsyn35 = _context73.v;
              disabledPermissionsExtension = _yield$getStorageAsyn35.disabledPermissionsExtension;
              return _context73.a(2, disabledPermissionsExtension || false);
          }
        }, _callee73);
      }));
      function getDisabledPermissionsExtension() {
        return _getDisabledPermissionsExtension.apply(this, arguments);
      }
      return getDisabledPermissionsExtension;
    }()
  }, {
    key: "getUserUid",
    value: function () {
      var _getUserUid = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee74() {
        var _yield$getStorageAsyn36, uid;
        return _regenerator().w(function (_context74) {
          while (1) switch (_context74.n) {
            case 0:
              _context74.n = 1;
              return getStorageAsync([STORAGE_KEYS.UID]);
            case 1:
              _yield$getStorageAsyn36 = _context74.v;
              uid = _yield$getStorageAsyn36.uid;
              return _context74.a(2, uid || '');
          }
        }, _callee74);
      }));
      function getUserUid() {
        return _getUserUid.apply(this, arguments);
      }
      return getUserUid;
    }()
  }, {
    key: "saveUserUid",
    value: function () {
      var _saveUserUid = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee75(userUid) {
        return _regenerator().w(function (_context75) {
          while (1) switch (_context75.n) {
            case 0:
              _context75.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.UID, userUid));
            case 1:
              return _context75.a(2);
          }
        }, _callee75);
      }));
      function saveUserUid(_x36) {
        return _saveUserUid.apply(this, arguments);
      }
      return saveUserUid;
    }()
  }, {
    key: "clearProxyStorage",
    value: function () {
      var _clearProxyStorage = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee76() {
        return _regenerator().w(function (_context76) {
          while (1) switch (_context76.n) {
            case 0:
              _context76.n = 1;
              return setStorageAsync(_defineProperty(_defineProperty(_defineProperty({}, STORAGE_KEYS.PROXY_STATUS, PROXY_STATUSES.DISCONNECT), STORAGE_KEYS.PROXY_ERROR, null), STORAGE_KEYS.CURRENT_PROXY, null));
            case 1:
              if (browserApi.isFireFoxBrowser()) {
                void browserApi.runtime.sendMessage({
                  type: PROXY_STATUS_UPDATED,
                  proxyStatus: PROXY_STATUSES.DISCONNECT
                })["catch"](function () {});
              }
            case 2:
              return _context76.a(2);
          }
        }, _callee76);
      }));
      function clearProxyStorage() {
        return _clearProxyStorage.apply(this, arguments);
      }
      return clearProxyStorage;
    }()
  }, {
    key: "saveCancelDisconnect",
    value: function () {
      var _saveCancelDisconnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee77(cancelDisconnect) {
        return _regenerator().w(function (_context77) {
          while (1) switch (_context77.n) {
            case 0:
              _context77.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.CANCEL_DISCONNECT, cancelDisconnect));
            case 1:
              return _context77.a(2);
          }
        }, _callee77);
      }));
      function saveCancelDisconnect(_x37) {
        return _saveCancelDisconnect.apply(this, arguments);
      }
      return saveCancelDisconnect;
    }()
  }, {
    key: "getCancelDisconnect",
    value: function () {
      var _getCancelDisconnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee78() {
        var _yield$getStorageAsyn37, cancelDisconnect;
        return _regenerator().w(function (_context78) {
          while (1) switch (_context78.n) {
            case 0:
              _context78.n = 1;
              return getStorageAsync([STORAGE_KEYS.CANCEL_DISCONNECT]);
            case 1:
              _yield$getStorageAsyn37 = _context78.v;
              cancelDisconnect = _yield$getStorageAsyn37.cancelDisconnect;
              return _context78.a(2, cancelDisconnect || false);
          }
        }, _callee78);
      }));
      function getCancelDisconnect() {
        return _getCancelDisconnect.apply(this, arguments);
      }
      return getCancelDisconnect;
    }()
  }, {
    key: "getProcessDisconnect",
    value: function () {
      var _getProcessDisconnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee79() {
        var _yield$getStorageAsyn38, processDisconnect;
        return _regenerator().w(function (_context79) {
          while (1) switch (_context79.n) {
            case 0:
              _context79.n = 1;
              return getStorageAsync([STORAGE_KEYS.PROCESS_DISCONNECT]);
            case 1:
              _yield$getStorageAsyn38 = _context79.v;
              processDisconnect = _yield$getStorageAsyn38.processDisconnect;
              return _context79.a(2, processDisconnect || false);
          }
        }, _callee79);
      }));
      function getProcessDisconnect() {
        return _getProcessDisconnect.apply(this, arguments);
      }
      return getProcessDisconnect;
    }()
  }, {
    key: "saveProcessDisconnect",
    value: function () {
      var _saveProcessDisconnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee80(processDisconnect) {
        return _regenerator().w(function (_context80) {
          while (1) switch (_context80.n) {
            case 0:
              _context80.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.PROCESS_DISCONNECT, processDisconnect));
            case 1:
              if (browserApi.isFireFoxBrowser()) {
                void browserApi.runtime.sendMessage({
                  type: PROCESS_DISCONNECT_UPDATED,
                  processDisconnect: processDisconnect
                })["catch"](function () {});
              }
            case 2:
              return _context80.a(2);
          }
        }, _callee80);
      }));
      function saveProcessDisconnect(_x38) {
        return _saveProcessDisconnect.apply(this, arguments);
      }
      return saveProcessDisconnect;
    }()
  }, {
    key: "getNotClosedSession",
    value: function () {
      var _getNotClosedSession = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee81() {
        var _yield$getStorageAsyn39, notClosedSessions;
        return _regenerator().w(function (_context81) {
          while (1) switch (_context81.n) {
            case 0:
              _context81.n = 1;
              return getStorageAsync([STORAGE_KEYS.NOT_CLOSED_SESSIONS]);
            case 1:
              _yield$getStorageAsyn39 = _context81.v;
              notClosedSessions = _yield$getStorageAsyn39.notClosedSessions;
              return _context81.a(2, notClosedSessions || []);
          }
        }, _callee81);
      }));
      function getNotClosedSession() {
        return _getNotClosedSession.apply(this, arguments);
      }
      return getNotClosedSession;
    }()
  }, {
    key: "saveNotClosedSession",
    value: function () {
      var _saveNotClosedSession = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee82(closedSessions) {
        return _regenerator().w(function (_context82) {
          while (1) switch (_context82.n) {
            case 0:
              _context82.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.NOT_CLOSED_SESSIONS, closedSessions));
            case 1:
              return _context82.a(2);
          }
        }, _callee82);
      }));
      function saveNotClosedSession(_x39) {
        return _saveNotClosedSession.apply(this, arguments);
      }
      return saveNotClosedSession;
    }()
  }, {
    key: "addNotClosedSession",
    value: function () {
      var _addNotClosedSession = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee83(closedSession) {
        var _yield$getStorageAsyn40, notClosedSessions, indexFindSession;
        return _regenerator().w(function (_context83) {
          while (1) switch (_context83.n) {
            case 0:
              _context83.n = 1;
              return getStorageAsync([STORAGE_KEYS.NOT_CLOSED_SESSIONS]);
            case 1:
              _yield$getStorageAsyn40 = _context83.v;
              notClosedSessions = _yield$getStorageAsyn40.notClosedSessions;
              if (!notClosedSessions) {
                notClosedSessions = [];
              }
              indexFindSession = notClosedSessions.map(function (e) {
                return e.host;
              }).indexOf(closedSession.host);
              if (~indexFindSession) {
                notClosedSessions[indexFindSession] = {
                  host: closedSession.host,
                  username: null,
                  password: null
                };
              } else {
                notClosedSessions.push(closedSession);
              }
              _context83.n = 2;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.NOT_CLOSED_SESSIONS, notClosedSessions));
            case 2:
              return _context83.a(2);
          }
        }, _callee83);
      }));
      function addNotClosedSession(_x40) {
        return _addNotClosedSession.apply(this, arguments);
      }
      return addNotClosedSession;
    }()
  }, {
    key: "saveIsNewProxyDomain",
    value: function () {
      var _saveIsNewProxyDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee84(isNewProxyDomain) {
        return _regenerator().w(function (_context84) {
          while (1) switch (_context84.n) {
            case 0:
              _context84.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.IS_NEW_PROXY_DOMAIN, isNewProxyDomain));
            case 1:
              return _context84.a(2);
          }
        }, _callee84);
      }));
      function saveIsNewProxyDomain(_x41) {
        return _saveIsNewProxyDomain.apply(this, arguments);
      }
      return saveIsNewProxyDomain;
    }()
  }, {
    key: "getIsNewProxyDomain",
    value: function () {
      var _getIsNewProxyDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee85() {
        var _yield$getStorageAsyn41, isNewProxyDomain;
        return _regenerator().w(function (_context85) {
          while (1) switch (_context85.n) {
            case 0:
              _context85.n = 1;
              return getStorageAsync([STORAGE_KEYS.IS_NEW_PROXY_DOMAIN]);
            case 1:
              _yield$getStorageAsyn41 = _context85.v;
              isNewProxyDomain = _yield$getStorageAsyn41.isNewProxyDomain;
              return _context85.a(2, isNewProxyDomain || false);
          }
        }, _callee85);
      }));
      function getIsNewProxyDomain() {
        return _getIsNewProxyDomain.apply(this, arguments);
      }
      return getIsNewProxyDomain;
    }()
  }, {
    key: "saveSessionExpiredNotified",
    value: function () {
      var _saveSessionExpiredNotified = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee86(sessionExpiredNotified) {
        return _regenerator().w(function (_context86) {
          while (1) switch (_context86.n) {
            case 0:
              _context86.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.SESSION_EXPIRED_NOTIFIED, sessionExpiredNotified));
            case 1:
              return _context86.a(2);
          }
        }, _callee86);
      }));
      function saveSessionExpiredNotified(_x42) {
        return _saveSessionExpiredNotified.apply(this, arguments);
      }
      return saveSessionExpiredNotified;
    }()
  }, {
    key: "getSessionExpiredNotified",
    value: function () {
      var _getSessionExpiredNotified = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee87() {
        var _yield$getStorageAsyn42, sessionExpiredNotified;
        return _regenerator().w(function (_context87) {
          while (1) switch (_context87.n) {
            case 0:
              _context87.n = 1;
              return getStorageAsync([STORAGE_KEYS.SESSION_EXPIRED_NOTIFIED]);
            case 1:
              _yield$getStorageAsyn42 = _context87.v;
              sessionExpiredNotified = _yield$getStorageAsyn42.sessionExpiredNotified;
              return _context87.a(2, sessionExpiredNotified || false);
          }
        }, _callee87);
      }));
      function getSessionExpiredNotified() {
        return _getSessionExpiredNotified.apply(this, arguments);
      }
      return getSessionExpiredNotified;
    }()
  }, {
    key: "saveIsNeedUpdateApiDomain",
    value: function () {
      var _saveIsNeedUpdateApiDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee88(isNeedUpdateApiDomain) {
        return _regenerator().w(function (_context88) {
          while (1) switch (_context88.n) {
            case 0:
              _context88.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.IS_NEED_UPDATE_API_DOMAIN, isNeedUpdateApiDomain));
            case 1:
              return _context88.a(2);
          }
        }, _callee88);
      }));
      function saveIsNeedUpdateApiDomain(_x43) {
        return _saveIsNeedUpdateApiDomain.apply(this, arguments);
      }
      return saveIsNeedUpdateApiDomain;
    }()
  }, {
    key: "getIsNeedUpdateApiDomain",
    value: function () {
      var _getIsNeedUpdateApiDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee89() {
        var _yield$getStorageAsyn43, isNeedUpdateApiDomain;
        return _regenerator().w(function (_context89) {
          while (1) switch (_context89.n) {
            case 0:
              _context89.n = 1;
              return getStorageAsync([STORAGE_KEYS.IS_NEED_UPDATE_API_DOMAIN]);
            case 1:
              _yield$getStorageAsyn43 = _context89.v;
              isNeedUpdateApiDomain = _yield$getStorageAsyn43.isNeedUpdateApiDomain;
              return _context89.a(2, isNeedUpdateApiDomain || false);
          }
        }, _callee89);
      }));
      function getIsNeedUpdateApiDomain() {
        return _getIsNeedUpdateApiDomain.apply(this, arguments);
      }
      return getIsNeedUpdateApiDomain;
    }()
  }, {
    key: "saveIsApiGatewayMainAfterCheck",
    value: function () {
      var _saveIsApiGatewayMainAfterCheck = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee90(isApiGatewayMainAfterCheck) {
        return _regenerator().w(function (_context90) {
          while (1) switch (_context90.n) {
            case 0:
              _context90.n = 1;
              return setStorageAsync(_defineProperty({}, STORAGE_KEYS.IS_API_GATEWAY_MAIN_AFTER_CHECK, isApiGatewayMainAfterCheck));
            case 1:
              return _context90.a(2);
          }
        }, _callee90);
      }));
      function saveIsApiGatewayMainAfterCheck(_x44) {
        return _saveIsApiGatewayMainAfterCheck.apply(this, arguments);
      }
      return saveIsApiGatewayMainAfterCheck;
    }()
  }, {
    key: "getIsApiGatewayMainAfterCheck",
    value: function () {
      var _getIsApiGatewayMainAfterCheck = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee91() {
        var _yield$getStorageAsyn44, isApiGatewayMainAfterCheck;
        return _regenerator().w(function (_context91) {
          while (1) switch (_context91.n) {
            case 0:
              _context91.n = 1;
              return getStorageAsync([STORAGE_KEYS.IS_API_GATEWAY_MAIN_AFTER_CHECK]);
            case 1:
              _yield$getStorageAsyn44 = _context91.v;
              isApiGatewayMainAfterCheck = _yield$getStorageAsyn44.isApiGatewayMainAfterCheck;
              return _context91.a(2, isApiGatewayMainAfterCheck || false);
          }
        }, _callee91);
      }));
      function getIsApiGatewayMainAfterCheck() {
        return _getIsApiGatewayMainAfterCheck.apply(this, arguments);
      }
      return getIsApiGatewayMainAfterCheck;
    }()
  }]);
}();
module.exports = StorageService;

/***/ }),

/***/ "./src/common/services/TranslateService.js":
/*!*************************************************!*\
  !*** ./src/common/services/TranslateService.js ***!
  \*************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var _require = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require.log,
  LOG_LEVELS = _require.LOG_LEVELS;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
var TranslateService = /*#__PURE__*/function () {
  function TranslateService() {
    _classCallCheck(this, TranslateService);
    this.language = "en";
    this.translations = {};
    this.loading = true;
    this.error = null;
    this.initialized = false;
    this.initPromise = this.initialize();
  }
  return _createClass(TranslateService, [{
    key: "loadTranslations",
    value: function () {
      var _loadTranslations = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(lang) {
        var response, langTranslations, enResponse, enTranslations, _t;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              _context.p = 0;
              this.loading = true;
              this.error = null;
              response = __webpack_require__("./src/locale sync recursive ^\\.\\/.*\\/translation\\.json$")("./".concat(lang, "/translation.json"));
              langTranslations = response || {};
              if (lang !== "en") {
                enResponse = __webpack_require__(/*! @src/locale/en/translation.json */ "./src/locale/en/translation.json");
                enTranslations = enResponse || {};
                langTranslations = _objectSpread(_objectSpread({}, enTranslations), langTranslations);
              }
              this.translations = langTranslations || {};
              _context.n = 2;
              break;
            case 1:
              _context.p = 1;
              _t = _context.v;
              this.error = "Failed to load translations";
              this.translations = {};
              throw _t;
            case 2:
              _context.p = 2;
              this.loading = false;
              return _context.f(2);
            case 3:
              return _context.a(2);
          }
        }, _callee, this, [[0, 1, 2, 3]]);
      }));
      function loadTranslations(_x) {
        return _loadTranslations.apply(this, arguments);
      }
      return loadTranslations;
    }()
  }, {
    key: "refreshTranslations",
    value: function () {
      var _refreshTranslations = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.n) {
            case 0:
              this.initialized = false;
              this.initPromise = null;
              return _context2.a(2, this.initialize());
          }
        }, _callee2, this);
      }));
      function refreshTranslations() {
        return _refreshTranslations.apply(this, arguments);
      }
      return refreshTranslations;
    }()
  }, {
    key: "initialize",
    value: function () {
      var _initialize = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
        var _this = this;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              if (!this.initialized) {
                _context4.n = 1;
                break;
              }
              return _context4.a(2);
            case 1:
              if (!this.initPromise) {
                this.initPromise = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
                  var generalSettings, _t2;
                  return _regenerator().w(function (_context3) {
                    while (1) switch (_context3.p = _context3.n) {
                      case 0:
                        _context3.p = 0;
                        _context3.n = 1;
                        return StorageService.getGeneralSettings();
                      case 1:
                        generalSettings = _context3.v;
                        _this.language = generalSettings.language || "en";
                        _context3.n = 2;
                        return _this.loadTranslations(_this.language);
                      case 2:
                        _this.initialized = true;
                        _context3.n = 6;
                        break;
                      case 3:
                        _context3.p = 3;
                        _t2 = _context3.v;
                        log(LOG_LEVELS.ERROR, "Initialize error, fallback to EN:", _t2);
                        _context3.n = 4;
                        return LogsService.addEvents('service.error_initialize', {}, _t2.message);
                      case 4:
                        _context3.n = 5;
                        return _this.loadTranslations("en");
                      case 5:
                        _this.initialized = true;
                      case 6:
                        return _context3.a(2);
                    }
                  }, _callee3, null, [[0, 3]]);
                }))();
              }
              return _context4.a(2, this.initPromise["catch"](function () {}));
          }
        }, _callee4, this);
      }));
      function initialize() {
        return _initialize.apply(this, arguments);
      }
      return initialize;
    }()
  }, {
    key: "changeLanguage",
    value: function () {
      var _changeLanguage = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(newLanguage) {
        var generalSettings, updatedSettings, _t3;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.p = _context5.n) {
            case 0:
              _context5.p = 0;
              this.language = newLanguage;
              _context5.n = 1;
              return this.loadTranslations(newLanguage);
            case 1:
              _context5.n = 2;
              return StorageService.getGeneralSettings();
            case 2:
              generalSettings = _context5.v;
              updatedSettings = _objectSpread(_objectSpread({}, generalSettings), {}, {
                language: newLanguage
              });
              _context5.n = 3;
              return StorageService.saveGeneralSettings(updatedSettings);
            case 3:
              _context5.n = 4;
              return this.refreshTranslations();
            case 4:
              _context5.n = 6;
              break;
            case 5:
              _context5.p = 5;
              _t3 = _context5.v;
              this.error = "Failed to change language";
              throw _t3;
            case 6:
              return _context5.a(2);
          }
        }, _callee5, this, [[0, 5]]);
      }));
      function changeLanguage(_x2) {
        return _changeLanguage.apply(this, arguments);
      }
      return changeLanguage;
    }()
  }, {
    key: "changeLanguageByMessage",
    value: function () {
      var _changeLanguageByMessage = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(message, sendResponse) {
        var _t4;
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.p = _context6.n) {
            case 0:
              _context6.p = 0;
              _context6.n = 1;
              return this.changeLanguage(message.language);
            case 1:
              sendResponse({
                status: true
              });
              _context6.n = 4;
              break;
            case 2:
              _context6.p = 2;
              _t4 = _context6.v;
              log(LOG_LEVELS.ERROR, "Error changing language:", _t4);
              _context6.n = 3;
              return LogsService.addEvents('service.error_change_language_by_message', {}, _t4.message);
            case 3:
              sendResponse({
                status: false
              });
            case 4:
              return _context6.a(2);
          }
        }, _callee6, this, [[0, 2]]);
      }));
      function changeLanguageByMessage(_x3, _x4) {
        return _changeLanguageByMessage.apply(this, arguments);
      }
      return changeLanguageByMessage;
    }()
  }, {
    key: "t",
    value: function t(key) {
      var data = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
      var defMessage = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : "";
      return this.translations && this.translations[key] ? this.translations[key] : defMessage ? defMessage : key;
    }
  }]);
}();
var translateService = new TranslateService();
module.exports = translateService;

/***/ }),

/***/ "./src/components/CountrySelector/CountrySelector.jsx":
/*!************************************************************!*\
  !*** ./src/components/CountrySelector/CountrySelector.jsx ***!
  \************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../common/services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_common_services_StorageService__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _svg_MoreDotsSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/MoreDotsSVG */ "./src/components/shared/svg/MoreDotsSVG.jsx");
/* harmony import */ var _svg_BackButtonSVG__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @svg/BackButtonSVG */ "./src/components/shared/svg/BackButtonSVG.jsx");
/* harmony import */ var _svg_SearchSVG__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @svg/SearchSVG */ "./src/components/shared/svg/SearchSVG.jsx");
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @src/hooks/useBorderManager */ "./src/hooks/useBorderManager.js");
/* harmony import */ var _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./CountrySelector.module.css */ "./src/components/CountrySelector/CountrySelector.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @common/functions/checkSubscriptions */ "./src/common/functions/checkSubscriptions.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }












var CountrySelector = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.memo)(function (_ref) {
  var _userData$subscriptio, _userData$subscriptio2, _userData$subscriptio3, _countryFound;
  var selectedCountry = _ref.selectedCountry,
    onSelect = _ref.onSelect,
    isConnected = _ref.isConnected,
    isBlockConnect = _ref.isBlockConnect,
    processConnect = _ref.processConnect,
    cityCode = _ref.cityCode,
    onSelectCityCode = _ref.onSelectCityCode,
    setManualSelectedCountry = _ref.setManualSelectedCountry,
    apiCountries = _ref.apiCountries,
    lastCountries = _ref.lastCountries,
    processConnectAfterPause = _ref.processConnectAfterPause,
    processDisconnect = _ref.processDisconnect,
    userData = _ref.userData,
    isPause = _ref.isPause,
    pauseCountry = _ref.pauseCountry;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""),
    _useState2 = _slicedToArray(_useState, 2),
    searchQuery = _useState2[0],
    setSearchQuery = _useState2[1];
  var fixedCountries = ["Germany", "Greece", "USA", "Poland", "Turkey"];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true),
    _useState4 = _slicedToArray(_useState3, 2),
    isLoading = _useState4[0],
    setIsLoading = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""),
    _useState6 = _slicedToArray(_useState5, 2),
    countryNameByOpenCities = _useState6[0],
    setCountryNameByOpenCities = _useState6[1];
  var cityDropdownRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__["default"]),
    t = _useContext.t;
  var _useBorderManager = (0,_src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_7__.useBorderManager)(),
    handleMouseEnter = _useBorderManager.handleMouseEnter,
    handleMouseLeave = _useBorderManager.handleMouseLeave,
    shouldRemoveBorder = _useBorderManager.shouldRemoveBorder;
  var subscriptionTrialStatus = (userData === null || userData === void 0 || (_userData$subscriptio = userData.subscription_info) === null || _userData$subscriptio === void 0 ? void 0 : _userData$subscriptio.status) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_11__.SUBSCRIPTION_STATUSES.TRIAL;
  var trialPeriodUntil = userData === null || userData === void 0 || (_userData$subscriptio2 = userData.subscription_info) === null || _userData$subscriptio2 === void 0 ? void 0 : _userData$subscriptio2.trial_period_until;
  var isTrial = subscriptionTrialStatus && trialPeriodUntil < new Date();
  var subscribedExpDate = userData === null || userData === void 0 || (_userData$subscriptio3 = userData.subscription_info) === null || _userData$subscriptio3 === void 0 ? void 0 : _userData$subscriptio3.subscription_exp_date;
  var isSubscriptionExpired = !(0,_common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_10__.checkSubscriptionStatus)(subscribedExpDate) && !isTrial;
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.show_country_selector');
  }, []);
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var loadData = /*#__PURE__*/function () {
      var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var currentProxy, initialCountry, _t;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              _context.p = 0;
              setIsLoading(true);
              _context.n = 1;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().getCurrentProxy();
            case 1:
              currentProxy = _context.v;
              initialCountry = currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.country;
              if (initialCountry && apiCountries !== null && apiCountries !== void 0 && apiCountries.some(function (c) {
                return c.name.toLowerCase() === initialCountry.toLowerCase();
              })) {
                onSelect(initialCountry);
                setManualSelectedCountry(initialCountry);
              }
              _context.n = 4;
              break;
            case 2:
              _context.p = 2;
              _t = _context.v;
              _context.n = 3;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.error_country_selector', {}, _t.message);
            case 3:
              (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.LOG_LEVELS.ERROR, "Error in effect:", _t);
            case 4:
              return _context.a(2);
          }
        }, _callee, null, [[0, 2]]);
      }));
      return function loadData() {
        return _ref2.apply(this, arguments);
      };
    }();
    loadData().then(function () {
      return setIsLoading(false);
    });
  }, [apiCountries]);
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var handleClickOutsideCities = function handleClickOutsideCities(event) {
      if (countryNameByOpenCities && cityDropdownRef.current && !cityDropdownRef.current.contains(event.target)) {
        setCountryNameByOpenCities("");
      }
    };
    document.addEventListener("mousedown", handleClickOutsideCities);
    return function () {
      return document.removeEventListener("mousedown", handleClickOutsideCities);
    };
  }, [countryNameByOpenCities]);
  var handleSelect = function handleSelect(country) {
    if (isDisableAction) return;
    if ((country === null || country === void 0 ? void 0 : country.cityCount) > 1) {
      if (isPause && pauseCountry) {
        onSelectCityCode(cityCode);
      } else {
        onSelectCityCode(country === null || country === void 0 ? void 0 : country.code);
      }
    }
    onSelect(country === null || country === void 0 ? void 0 : country.name);
    setManualSelectedCountry(country === null || country === void 0 ? void 0 : country.name);
    setSearchQuery("");
  };
  var handleSelectCity = /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(countryName, city) {
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.n) {
          case 0:
            if (!isDisableAction) {
              _context2.n = 1;
              break;
            }
            return _context2.a(2);
          case 1:
            onSelect(countryName);
            setManualSelectedCountry(countryName);
            onSelectCityCode(city);
            setSearchQuery("");
            setCountryNameByOpenCities("");
          case 2:
            return _context2.a(2);
        }
      }, _callee2);
    }));
    return function handleSelectCity(_x, _x2) {
      return _ref3.apply(this, arguments);
    };
  }();
  var handleSearchChange = function handleSearchChange(e) {
    var value = e.target.value.toLowerCase();
    value = value.replace(/^\s+/, '');
    value = value.replace(/\s{2,}/g, ' ');
    if (value.trim().length === 0) {
      setSearchQuery('');
      return;
    }
    setSearchQuery(value);
  };
  var handleDotsClick = function handleDotsClick(countryName, e) {
    e.stopPropagation();
    setCountryNameByOpenCities(countryName);
  };
  if (!apiCountries || !apiCountries.length) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: "country-not-found"
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: "description"
    }, t("no_valid_connections")));
  }
  var dropdownCountries = apiCountries.filter(function (country) {
    return country.name.toLowerCase().includes(searchQuery.trim());
  }).sort(function (a, b) {
    return a.name.localeCompare(b.name);
  });
  var dropdownCities = [];
  apiCountries.forEach(function (country) {
    if (country.cities && country.cities.length > 1) {
      country.cities.forEach(function (city_obj) {
        var _city_obj$city;
        if ((_city_obj$city = city_obj.city) !== null && _city_obj$city !== void 0 && _city_obj$city.toLowerCase().includes(searchQuery.trim())) {
          var newCountry = _objectSpread(_objectSpread({}, country), {}, {
            city: city_obj.city,
            code_city: city_obj.code
          });
          dropdownCities.push(newCountry);
        }
      });
    } else {
      var _country$city;
      if ((_country$city = country.city) !== null && _country$city !== void 0 && _country$city.toLowerCase().includes(searchQuery.trim())) {
        dropdownCities.push(country);
      }
    }
  });
  dropdownCities.sort(function (a, b) {
    return a.city.localeCompare(b.city);
  });
  var displayedCountries = [];
  var displayedCountriesKeysNew = Array.from(new Set([].concat(_toConsumableArray(lastCountries.filter(function (country) {
    return country != null;
  })), _toConsumableArray(fixedCountries.filter(function (country) {
    return country != null;
  }))))).slice(0, 7);
  var fixedCountriesData = [];
  displayedCountriesKeysNew.forEach(function (country) {
    var findCountry = apiCountries.find(function (c) {
      return c.name.toLowerCase() === country.toLowerCase();
    });
    if (findCountry) {
      fixedCountriesData.push(findCountry);
    }
  });
  fixedCountriesData = fixedCountriesData.slice(0, 5);
  if (selectedCountry && !fixedCountriesData.map(function (n) {
    return n.name.toLowerCase();
  }).includes(selectedCountry.toLowerCase())) {
    var selected = apiCountries.find(function (c) {
      return c.name.toLowerCase() === selectedCountry.toLowerCase();
    });
    if (selected) displayedCountries.push(selected);
  }
  displayedCountries.push.apply(displayedCountries, _toConsumableArray(fixedCountriesData));
  if (isLoading) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].wrapper
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].container
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].coutries
    }, _toConsumableArray(Array(5)).map(function (_, i) {
      return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
        key: "skeleton-".concat(i),
        className: "vpn-country"
      }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
        className: "vpn-flag-circle skeleton-flag"
      }));
    }))));
  }
  var countryFound = null;
  if (countryNameByOpenCities) {
    countryFound = dropdownCountries.find(function (country) {
      return countryNameByOpenCities.toLowerCase() === country.name.toLowerCase();
    });
  }
  var isDisableAction = processConnect || processConnectAfterPause || processDisconnect || isSubscriptionExpired;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].container
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].coutries
  }, displayedCountries.map(function (country) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(DisplayedCountry, {
      key: country.name,
      country: country,
      selectedCountry: selectedCountry,
      isConnected: isConnected,
      isBlockConnect: isBlockConnect,
      handleSelect: handleSelect,
      isDisableAction: isDisableAction,
      cityCode: cityCode
    });
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchContainer
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    type: "text",
    placeholder: t("search_for_countries"),
    value: searchQuery,
    onChange: handleSearchChange,
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].search
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_SearchSVG__WEBPACK_IMPORTED_MODULE_5__["default"], {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchIcon
  })), countryNameByOpenCities && countryFound ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    ref: cityDropdownRef,
    className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchList, " ").concat(isDisableAction ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disablad : "")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "vpn-dropdown-item"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "back-button",
    onClick: function onClick() {
      return setCountryNameByOpenCities("");
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_BackButtonSVG__WEBPACK_IMPORTED_MODULE_4__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "vpn-dropdown-item-content",
    onClick: function onClick() {
      return handleSelect(countryFound);
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
    src: countryFound.flag,
    alt: countryFound.name,
    className: "vpn-flag-circle"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "vpn-dropdown-info"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: "vpn-dropdown-title"
  }, countryFound.name)))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].dropdown, " vpn-dropdown")
  }, (_countryFound = countryFound) === null || _countryFound === void 0 || (_countryFound = _countryFound.cities) === null || _countryFound === void 0 ? void 0 : _countryFound.map(function (city) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: city.code,
      className: "vpn-dropdown-item",
      onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              _context3.n = 1;
              return handleSelectCity(countryFound.name, city.code);
            case 1:
              return _context3.a(2, _context3.v);
          }
        }, _callee3);
      }))
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: "vpn-dropdown-title"
    }, city.city, " ( ", city.coordinates.lat, " /", " ", city.coordinates.lon, " )"));
  }))) : searchQuery ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchList
  }, dropdownCountries && dropdownCountries.length ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItemWrapper, " ").concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItemWrapperTitle, " ")
  }, t("countries"), " ", dropdownCountries.length), dropdownCountries.map(function (country, index) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: country.name,
      className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItemWrapper, " ").concat(isDisableAction ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disabled : "", " ").concat(shouldRemoveBorder(index) ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].noBorder : ""),
      onClick: function onClick() {
        return handleSelect(country);
      },
      onMouseEnter: function onMouseEnter() {
        return handleMouseEnter(index);
      },
      onMouseLeave: handleMouseLeave
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItem
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].content
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
      src: country.flag,
      alt: country.name,
      className: "vpn-flag-circle"
    }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].text
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].title
    }, country.name), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].subtitle
    }, country.cityCount === 1 ? country.city : country.cityCount + " cities"))), country.cityCount > 1 && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: "dots-container",
      onClick: function onClick(e) {
        return handleDotsClick(country.name, e);
      }
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_MoreDotsSVG__WEBPACK_IMPORTED_MODULE_3__["default"], {
      classNameNew: "dots-icon"
    }))));
  })) : null, dropdownCities && dropdownCities.length ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItemWrapper, " ").concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItemWrapperTitle, " ")
  }, t("cities"), " ", dropdownCities.length), dropdownCities.map(function (country, index) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: country.city ? country.city : country.name,
      className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItemWrapper, " ").concat(isDisableAction ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disabled : "", " ").concat(shouldRemoveBorder(index) ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].noBorder : ""),
      onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
        var _country$code_city;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              _context4.n = 1;
              return handleSelectCity(country.name, (_country$code_city = country.code_city) !== null && _country$code_city !== void 0 ? _country$code_city : country.code);
            case 1:
              return _context4.a(2);
          }
        }, _callee4);
      })),
      onMouseEnter: function onMouseEnter() {
        return handleMouseEnter(index);
      },
      onMouseLeave: handleMouseLeave
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItem
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].content
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
      src: country.flag,
      alt: country.name,
      className: "vpn-flag-circle"
    }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].text
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].title
    }, country.city)))));
  })) : null)) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchList
  }, dropdownCountries.map(function (country, index) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: country.name,
      className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItemWrapper, " ").concat(isDisableAction ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disabled : "", " ").concat(shouldRemoveBorder(index) ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].noBorder : ""),
      onClick: function onClick() {
        return handleSelect(country);
      },
      onMouseEnter: function onMouseEnter() {
        return handleMouseEnter(index);
      },
      onMouseLeave: handleMouseLeave
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].searchItem
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].content
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
      src: country.flag,
      alt: country.name,
      className: "vpn-flag-circle"
    }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].text
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].title
    }, country.name), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].subtitle
    }, country.cityCount === 1 ? country.city : country.cityCount + " cities"))), country.cityCount > 1 && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: "dots-container",
      onClick: function onClick(e) {
        return handleDotsClick(country.name, e);
      }
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_MoreDotsSVG__WEBPACK_IMPORTED_MODULE_3__["default"], {
      classNameNew: "dots-icon"
    }))));
  }))));
});
function DisplayedCountry(_ref6) {
  var country = _ref6.country,
    selectedCountry = _ref6.selectedCountry,
    isConnected = _ref6.isConnected,
    isBlockConnect = _ref6.isBlockConnect,
    isDisableAction = _ref6.isDisableAction,
    handleSelect = _ref6.handleSelect,
    cityCode = _ref6.cityCode;
  var tooltipRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  function calcTooltipPosition() {
    if (tooltipRef.current) {
      var parent = tooltipRef.current.parentElement;
      var windowIndent = 15;
      var leftOffset = parent.offsetLeft + parent.clientWidth / 2 - tooltipRef.current.clientWidth / 2;
      tooltipRef.current.style.left = (leftOffset < windowIndent ? windowIndent : leftOffset + tooltipRef.current.clientWidth > window.innerWidth ? window.innerWidth - tooltipRef.current.clientWidth - windowIndent : leftOffset) + 'px';
      tooltipRef.current.style.top = parent.offsetTop - 7 - tooltipRef.current.clientHeight + 'px';
    }
  }
  var getCityForTooltip = function getCityForTooltip() {
    if ((country === null || country === void 0 ? void 0 : country.cityCount) <= 1 || !country.cities) {
      return country.city;
    }
    var selectedCity = country.cities.find(function (c) {
      return c.code.toLowerCase() === cityCode.toLowerCase();
    });
    if (!selectedCity) {
      return country.city;
    }
    return selectedCity.city;
  };
  var checkSelected = function checkSelected() {
    if ((selectedCountry === null || selectedCountry === void 0 ? void 0 : selectedCountry.toLowerCase()) === country.name.toLowerCase() && (isConnected || isBlockConnect)) {
      return _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].selected;
    }
  };
  var checkDisabled = function checkDisabled() {
    var _country$name;
    if ((selectedCountry === null || selectedCountry === void 0 ? void 0 : selectedCountry.toLowerCase()) === (country === null || country === void 0 || (_country$name = country.name) === null || _country$name === void 0 ? void 0 : _country$name.toLowerCase())) {
      return isDisableAction || (cityCode === null || cityCode === void 0 ? void 0 : cityCode.toLowerCase()) !== (country === null || country === void 0 ? void 0 : country.code.toLowerCase());
    }
    return isDisableAction;
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].vpnCountry, " ").concat(checkSelected(), " ").concat(checkDisabled() ? _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disabled : ""),
    onClick: function onClick() {
      return handleSelect(country);
    },
    onMouseOver: calcTooltipPosition
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].tooltip,
    ref: tooltipRef
  }, country.name, country.city ? " - ".concat(getCityForTooltip()) : ""), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
    src: country.flag,
    alt: country.name,
    className: "".concat(_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].flag, " ")
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (CountrySelector);

/***/ }),

/***/ "./src/components/CountrySelector/CountrySelector.module.css":
/*!*******************************************************************!*\
  !*** ./src/components/CountrySelector/CountrySelector.module.css ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./CountrySelector.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/CountrySelector/CountrySelector.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_CountrySelector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/NoSubscribe/NoSubscribe.jsx":
/*!****************************************************!*\
  !*** ./src/components/NoSubscribe/NoSubscribe.jsx ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./NoSubscribe.module.css */ "./src/components/NoSubscribe/NoSubscribe.module.css");
/* harmony import */ var _src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @src/components/shared/components/Button */ "./src/components/shared/components/Button.jsx");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _services_SendMessageService__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @services/SendMessageService */ "./src/common/services/SendMessageService.js");
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }







function NoSubscribe() {
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    blockGetLink = _useState2[0],
    setBlockGetLink = _useState2[1];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_5__["default"].addEvents('extension.show_no_subscribe');
  }, []);
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].title
  }, t('need_subscription')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].description
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, t('need_subscription_desc_1')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, t('need_subscription_desc_2'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_3__["default"], {
    className: _NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].btn,
    onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
      return _regenerator().w(function (_context) {
        while (1) switch (_context.n) {
          case 0:
            if (!blockGetLink) {
              _context.n = 1;
              break;
            }
            return _context.a(2);
          case 1:
            setBlockGetLink(true);
            _context.n = 2;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_5__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.OPEN_PRICING), {
              method_send: 'NoSubscribe'
            });
          case 2:
            _context.n = 3;
            return _services_SendMessageService__WEBPACK_IMPORTED_MODULE_6__["default"].sendMessage(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_4__.OPEN_PRICING)["catch"](function (err) {});
          case 3:
            setBlockGetLink(false);
          case 4:
            return _context.a(2);
        }
      }, _callee);
    }))
  }, t('subscribe_now')));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NoSubscribe);

/***/ }),

/***/ "./src/components/NoSubscribe/NoSubscribe.module.css":
/*!***********************************************************!*\
  !*** ./src/components/NoSubscribe/NoSubscribe.module.css ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./NoSubscribe.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/NoSubscribe/NoSubscribe.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NoSubscribe_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/Preloader/Preloader.jsx":
/*!************************************************!*\
  !*** ./src/components/Preloader/Preloader.jsx ***!
  \************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _Preloader_module_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Preloader.module.css */ "./src/components/Preloader/Preloader.module.css");


function Preloader() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Preloader_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].loaderWrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Preloader_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].loader
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Preloader);

/***/ }),

/***/ "./src/components/Preloader/Preloader.module.css":
/*!*******************************************************!*\
  !*** ./src/components/Preloader/Preloader.module.css ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Preloader_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./Preloader.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/Preloader/Preloader.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Preloader_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Preloader_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Preloader_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Preloader_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/VpnControls/Statuses/ConnectedStatus.jsx":
/*!*****************************************************************!*\
  !*** ./src/components/VpnControls/Statuses/ConnectedStatus.jsx ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _src_hooks_useCountryState__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @src/hooks/useCountryState */ "./src/hooks/useCountryState.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _entities_proxyserver__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @entities/proxyserver */ "./src/entities/proxyserver.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _PauseBtn__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./PauseBtn */ "./src/components/VpnControls/Statuses/PauseBtn.jsx");
/* harmony import */ var _context_LanguageContext_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @context/LanguageContext.js */ "./src/context/LanguageContext.js");
/* harmony import */ var _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Statuses.module.css */ "./src/components/VpnControls/Statuses/Statuses.module.css");
/* harmony import */ var _src_components_VpnControls_Statuses_ConnectingStatus__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @src/components/VpnControls/Statuses/ConnectingStatus */ "./src/components/VpnControls/Statuses/ConnectingStatus.jsx");
/* harmony import */ var _common_browser_storages_browser_storage__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @common/browser_storages/browser_storage */ "./src/common/browser_storages/browser_storage.js");
/* harmony import */ var _common_browser_storages_browser_storage__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_common_browser_storages_browser_storage__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var _sw_constants_storage_keys_constants__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @sw/constants/storage_keys_constants */ "./src/sw/constants/storage_keys_constants.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
/* harmony import */ var _sw_tools_utils__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @sw/tools/utils */ "./src/sw/tools/utils.js");
/* harmony import */ var _sw_tools_utils__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_sw_tools_utils__WEBPACK_IMPORTED_MODULE_13__);
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _svg_ConnectingLoadBorderIconSVG__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @svg/ConnectingLoadBorderIconSVG */ "./src/components/shared/svg/ConnectingLoadBorderIconSVG.jsx");
/* harmony import */ var _svg_ConnectingIconSVG__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @svg/ConnectingIconSVG */ "./src/components/shared/svg/ConnectingIconSVG.jsx");
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }


















function ConnectedStatus(_ref) {
  var selectedCountry = _ref.selectedCountry,
    cityCode = _ref.cityCode,
    pauseState = _ref.pauseState,
    connectSelectIpByStatus = _ref.connectSelectIpByStatus,
    processConnect = _ref.processConnect,
    settings = _ref.settings,
    pauseCountry = _ref.pauseCountry,
    disconnect = _ref.disconnect,
    onAutoDisconnect = _ref.onAutoDisconnect,
    _setPauseCountry = _ref.setPauseCountry,
    processConnectAfterPause = _ref.processConnectAfterPause,
    cancelConnect = _ref.cancelConnect,
    processDisconnect = _ref.processDisconnect,
    cancelDisconnect = _ref.cancelDisconnect;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""),
    _useState2 = _slicedToArray(_useState, 2),
    currentCountry = _useState2[0],
    setCurrentCountry = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(""),
    _useState4 = _slicedToArray(_useState3, 2),
    disconnectStatusProcess = _useState4[0],
    setDisconnectStatusProcess = _useState4[1];
  var _useCountryState = (0,_src_hooks_useCountryState__WEBPACK_IMPORTED_MODULE_2__["default"])(),
    apiCountries = _useCountryState.apiCountries;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext_js__WEBPACK_IMPORTED_MODULE_7__["default"]),
    t = _useContext.t;
  var _pauseState = _slicedToArray(pauseState, 2),
    isPaused = _pauseState[0],
    setIsPaused = _pauseState[1];
  var interval = null;
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    if (!!selectedCountry) {
      setCurrentCountry(selectedCountry);
    } else if (!!pauseCountry) {
      setCurrentCountry(pauseCountry);
    }
  }, [selectedCountry, pauseCountry]);
  var handleDisconnectClick = /*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
      var _t;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.p = _context.n) {
          case 0:
            if (!isPaused) {
              _context.n = 12;
              break;
            }
            _context.p = 1;
            _context.n = 2;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveProcessDisconnect(Date.now());
          case 2:
            _context.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_14__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_1__.DELETE_PAUSE), {
              method_send: 'handleDisconnectClick'
            });
          case 3:
            _context.n = 4;
            return _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default().runtime.sendMessage({
              action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_1__.DELETE_PAUSE
            });
          case 4:
            setIsPaused(false);
            _context.n = 5;
            return (0,_common_browser_storages_browser_storage__WEBPACK_IMPORTED_MODULE_10__.removeStorageAsync)(_sw_constants_storage_keys_constants__WEBPACK_IMPORTED_MODULE_11__.STORAGE_KEYS.SELECTED_COUNTRY);
          case 5:
            _context.n = 6;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveProxyStatus(_sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_12__.PROXY_STATUSES.DISCONNECT);
          case 6:
            _context.n = 7;
            return (0,_sw_tools_utils__WEBPACK_IMPORTED_MODULE_13__.updateIcon)(false);
          case 7:
            _context.n = 9;
            break;
          case 8:
            _context.p = 8;
            _t = _context.v;
          case 9:
            _context.p = 9;
            _context.n = 10;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveProcessDisconnect(false);
          case 10:
            return _context.f(9);
          case 11:
            _context.n = 13;
            break;
          case 12:
            disconnect();
          case 13:
            return _context.a(2);
        }
      }, _callee, null, [[1, 8, 9, 11]]);
    }));
    return function handleDisconnectClick() {
      return _ref2.apply(this, arguments);
    };
  }();
  var getCityByCountry = function getCityByCountry(cur_country) {
    if (!cur_country) {
      return '';
    }
    if (cityCode) {
      var country = apiCountries.find(function (c) {
        return c.cities && c.name.toLowerCase() === cur_country.toLowerCase() ? c.cities.find(function (city) {
          return city.code.toLowerCase() === cityCode.toLowerCase();
        }) : '';
      });
      if (!country) {
        var _country = apiCountries.find(function (c) {
          return c.name.toLowerCase() === cur_country.toLowerCase();
        });
        return _country ? _country.city : '';
      }
      return country.cities ? country.cities.find(function (city) {
        return city.code.toLowerCase() === cityCode.toLowerCase();
      }).city : '';
    } else {
      var _country2 = apiCountries.find(function (c) {
        return c.name.toLowerCase() === cur_country.toLowerCase();
      });
      return _country2 ? _country2.city : '';
    }
  };
  var getImageByCountry = function getImageByCountry(cur_country) {
    var country = apiCountries.find(function (c) {
      return c.name.toLowerCase() === cur_country.toLowerCase();
    });
    return country ? country.flag : null;
  };
  var city = getCityByCountry(currentCountry);
  var resumeConnection = /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
      var pauseSetting, currentProxy, proxyServer;
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.n) {
          case 0:
            _context2.n = 1;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getPauseSetting();
          case 1:
            pauseSetting = _context2.v;
            currentProxy = (pauseSetting === null || pauseSetting === void 0 ? void 0 : pauseSetting.pauseProxy) || null;
            _context2.n = 2;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_14__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_1__.DELETE_PAUSE), {
              method_send: 'resumeConnection'
            });
          case 2:
            _context2.n = 3;
            return _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default().runtime.sendMessage({
              action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_1__.DELETE_PAUSE
            });
          case 3:
            setIsPaused(false);
            if (currentProxy) {
              proxyServer = new _entities_proxyserver__WEBPACK_IMPORTED_MODULE_4__.ProxyServer(currentProxy.host, currentProxy.port, currentProxy.country, currentProxy.username, currentProxy.password, currentProxy.lat, currentProxy.lon, currentProxy.timeZone, currentProxy.offset);
              connectSelectIpByStatus(proxyServer);
            }
          case 4:
            return _context2.a(2);
        }
      }, _callee2);
    }));
    return function resumeConnection() {
      return _ref3.apply(this, arguments);
    };
  }();
  function checkDisconnectTimestamp() {
    try {
      if (!processDisconnect) {
        setDisconnectStatusProcess("");
        return;
      }
      var currentTime = Date.now();
      var timeElapsed = (currentTime - processDisconnect) / 1000;
      (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_15__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_15__.LOG_LEVELS.INFO, '[Proxy] Time elapsed since disconnect:', timeElapsed, processDisconnect);
      if (timeElapsed > 6) {
        setDisconnectStatusProcess('showCancelDisconnect');
      } else if (timeElapsed >= 2) {
        setDisconnectStatusProcess('startLoadingDisconnect');
      } else {
        setDisconnectStatusProcess('processDisconnect');
      }
    } catch (error) {
      (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_15__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_15__.LOG_LEVELS.ERROR, '[Proxy] Error checking disconnect timestamp:', error);
      setDisconnectStatusProcess("");
    }
  }
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    checkDisconnectTimestamp();
  }, []);
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    if (processDisconnect) {
      if (interval) {
        clearInterval(interval);
        interval = null;
      }
      interval = setInterval(checkDisconnectTimestamp, 500);
    } else {
      if (interval) {
        clearInterval(interval);
        interval = null;
      }
    }
    return function () {
      if (interval) {
        clearInterval(interval);
        interval = null;
      }
    };
  }, [processDisconnect]);
  return disconnectStatusProcess === 'startLoadingDisconnect' || disconnectStatusProcess === 'showCancelDisconnect' ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].data
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].iconWrapper, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].connecting)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ConnectingIconSVG__WEBPACK_IMPORTED_MODULE_17__["default"], {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].icon
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ConnectingLoadBorderIconSVG__WEBPACK_IMPORTED_MODULE_16__["default"], {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].loading
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].title
  }, t("pre_disconnected")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].description
  }, t("status_disconnecting_desc")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].buttons
  }, disconnectStatusProcess === 'showCancelDisconnect' ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].button, "\n              ").concat(disconnectStatusProcess === 'showCancelDisconnect' ? _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].cancel : _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disconnect),
    onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
      return _regenerator().w(function (_context3) {
        while (1) switch (_context3.n) {
          case 0:
            if (!(disconnectStatusProcess === 'showCancelDisconnect')) {
              _context3.n = 1;
              break;
            }
            if (cancelDisconnect) {
              _context3.n = 1;
              break;
            }
            _context3.n = 1;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveCancelDisconnect(true);
          case 1:
            return _context3.a(2);
        }
      }, _callee3);
    }))
  }, t("cancel")) : settings && settings.autoConnect ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].button, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].cancel),
    disabled: true
  }, t("button_auto_disconnect")) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].button, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].cancel),
    disabled: true
  }, t("button_disconnect")))) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, cancelConnect && processConnectAfterPause ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_VpnControls_Statuses_ConnectingStatus__WEBPACK_IMPORTED_MODULE_9__["default"], {
    cancelConnect: cancelConnect
  }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].data
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].iconWrapper, " ").concat(isPaused ? _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].pause : _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].connected)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
    src: getImageByCountry(currentCountry),
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].flag,
    alt: currentCountry
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(isPaused ? _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].pause : "")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].title
  }, currentCountry), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].description
  }, city)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].additionalButtons
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_PauseBtn__WEBPACK_IMPORTED_MODULE_6__["default"], {
    pauseState: pauseState,
    settings: settings,
    processConnect: processConnect,
    resumeConnection: resumeConnection,
    setPauseCountry: function setPauseCountry() {
      return _setPauseCountry(currentCountry);
    }
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].buttons
  }, settings && settings.autoConnect ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].button, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disconnect),
    onClick: onAutoDisconnect,
    disabled: processDisconnect
  }, t("button_auto_disconnect")) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: handleDisconnectClick,
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].button, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].disconnect),
    disabled: processDisconnect
  }, t("button_disconnect")), isPaused && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].button, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].resume),
    onClick: resumeConnection
  }, t("resume_now")))));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ConnectedStatus);

/***/ }),

/***/ "./src/components/VpnControls/Statuses/ConnectingStatus.jsx":
/*!******************************************************************!*\
  !*** ./src/components/VpnControls/Statuses/ConnectingStatus.jsx ***!
  \******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _svg_ConnectingIconSVG__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @svg/ConnectingIconSVG */ "./src/components/shared/svg/ConnectingIconSVG.jsx");
/* harmony import */ var _svg_ConnectingLoadBorderIconSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/ConnectingLoadBorderIconSVG */ "./src/components/shared/svg/ConnectingLoadBorderIconSVG.jsx");
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Statuses.module.css */ "./src/components/VpnControls/Statuses/Statuses.module.css");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_5__);
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }






function ConnectingStatus(_ref) {
  var _ref$cancelConnect = _ref.cancelConnect,
    cancelConnect = _ref$cancelConnect === void 0 ? function () {} : _ref$cancelConnect;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_3__["default"]),
    t = _useContext.t;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    statusCancel = _useState2[0],
    setStatusCancel = _useState2[1];
  _common_browserApi__WEBPACK_IMPORTED_MODULE_5___default().storage.onChanged.addListener(/*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(details) {
      var _details$cancelConnec;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.n) {
          case 0:
            if (details.cancelConnect) {
              setStatusCancel(((_details$cancelConnec = details.cancelConnect) === null || _details$cancelConnec === void 0 ? void 0 : _details$cancelConnec.newValue) || false);
            }
          case 1:
            return _context.a(2);
        }
      }, _callee);
    }));
    return function (_x) {
      return _ref2.apply(this, arguments);
    };
  }());
  var updateStatus = function updateStatus() {
    if (cancelConnect && !statusCancel) {
      setStatusCancel(true);
      cancelConnect();
    }
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].data
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].iconWrapper, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].connecting)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ConnectingIconSVG__WEBPACK_IMPORTED_MODULE_1__["default"], {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].icon
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ConnectingLoadBorderIconSVG__WEBPACK_IMPORTED_MODULE_2__["default"], {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].loading
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, statusCancel ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].title
  }, t("pre_cancel")) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].title
  }, t("pre_connected")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].description
  }, t("status_connecting_desc")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].buttons
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: function onClick(e) {
      return updateStatus();
    },
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].button, " ").concat(statusCancel ? _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].cancel : _Statuses_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].disconnect)
  }, t("cancel"))));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ConnectingStatus);

/***/ }),

/***/ "./src/components/VpnControls/Statuses/NotConnectedStatus.jsx":
/*!********************************************************************!*\
  !*** ./src/components/VpnControls/Statuses/NotConnectedStatus.jsx ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _svg_LockIconDarkSVG__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @svg/LockIconDarkSVG */ "./src/components/shared/svg/LockIconDarkSVG.jsx");
/* harmony import */ var _svg_LockIconLightSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/LockIconLightSVG */ "./src/components/shared/svg/LockIconLightSVG.jsx");
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @common/functions/checkSubscriptions */ "./src/common/functions/checkSubscriptions.js");
/* harmony import */ var _Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Statuses.module.css */ "./src/components/VpnControls/Statuses/Statuses.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var _services_SendMessageService__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @services/SendMessageService */ "./src/common/services/SendMessageService.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }










function NotConnectedStatus(_ref) {
  var _userData$subscriptio, _userData$subscriptio2, _userData$subscriptio3;
  var onConnect = _ref.onConnect,
    theme = _ref.theme,
    userData = _ref.userData,
    apiCountries = _ref.apiCountries;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_3__["default"]),
    t = _useContext.t;
  var subscriptionTrialStatus = (userData === null || userData === void 0 || (_userData$subscriptio = userData.subscription_info) === null || _userData$subscriptio === void 0 ? void 0 : _userData$subscriptio.status) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_9__.SUBSCRIPTION_STATUSES.TRIAL;
  var trialPeriodUntil = userData === null || userData === void 0 || (_userData$subscriptio2 = userData.subscription_info) === null || _userData$subscriptio2 === void 0 ? void 0 : _userData$subscriptio2.trial_period_until;
  var isTrial = subscriptionTrialStatus && trialPeriodUntil < new Date();
  var subscribedExpDate = userData === null || userData === void 0 || (_userData$subscriptio3 = userData.subscription_info) === null || _userData$subscriptio3 === void 0 ? void 0 : _userData$subscriptio3.subscription_exp_date;
  var isSubscriptionExpired = !(0,_common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_4__.checkSubscriptionStatus)(subscribedExpDate) && !isTrial;
  var checkCountries = apiCountries && apiCountries.length;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].data
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].iconWrapper
  }, isSubscriptionExpired ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
    src: 'icon.svg',
    alt: "",
    width: "44px"
  }) : theme === "dark" ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_LockIconDarkSVG__WEBPACK_IMPORTED_MODULE_1__["default"], null) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_LockIconLightSVG__WEBPACK_IMPORTED_MODULE_2__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].title
  }, isSubscriptionExpired ? t('activate_your_vpn') : t("status_not_connected")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].description
  }, isSubscriptionExpired ? t("choose_plan") : t("status_not_connected_desc")))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].buttons
  }, isSubscriptionExpired ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].button, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].getSubscription),
    onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
      return _regenerator().w(function (_context) {
        while (1) switch (_context.n) {
          case 0:
            _context.n = 1;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_6__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_7__.OPEN_PRICING), {
              method_send: 'handleLogout'
            });
          case 1:
            _context.n = 2;
            return _services_SendMessageService__WEBPACK_IMPORTED_MODULE_8__["default"].sendMessage(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_7__.OPEN_PRICING)["catch"](function (err) {
              return setGeneralError(err.message);
            });
          case 2:
            return _context.a(2);
        }
      }, _callee);
    }))
  }, t('get_subscription')) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].button, " ").concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_5__["default"].connect),
    onClick: onConnect,
    disabled: isSubscriptionExpired || !checkCountries
  }, t("button_connect"))));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NotConnectedStatus);

/***/ }),

/***/ "./src/components/VpnControls/Statuses/PauseBtn.jsx":
/*!**********************************************************!*\
  !*** ./src/components/VpnControls/Statuses/PauseBtn.jsx ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _svg_PauseIconSVG__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @svg/PauseIconSVG */ "./src/components/shared/svg/PauseIconSVG.jsx");
/* harmony import */ var _Statuses_module_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./Statuses.module.css */ "./src/components/VpnControls/Statuses/Statuses.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
var _excluded = ["username", "password"];
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }










function PauseBtn(_ref) {
  var pauseState = _ref.pauseState,
    settings = _ref.settings,
    processConnect = _ref.processConnect,
    resumeConnection = _ref.resumeConnection,
    setPauseCountry = _ref.setPauseCountry;
  var _pauseState = _slicedToArray(pauseState, 2),
    isPaused = _pauseState[0],
    setIsPaused = _pauseState[1];
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(0),
    _useState2 = _slicedToArray(_useState, 2),
    timeLeft = _useState2[0],
    setTimeLeft = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState4 = _slicedToArray(_useState3, 2),
    showPausePopup = _useState4[0],
    setShowPausePopup = _useState4[1];
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var pauseOptions = [
  // { label: t('pause_10_sec'), value: 10 },
  {
    label: t("pause_5_min"),
    value: 300
  }, {
    label: t("pause_30_min"),
    value: 1800
  }, {
    label: t("pause_1_hour"),
    value: 3600
  }];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var initializePauseState = /*#__PURE__*/function () {
      var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var proxyStatus, pauseSetting, pauseTime, lastTime;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.n) {
            case 0:
              _context.n = 1;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getProxyStatus();
            case 1:
              proxyStatus = _context.v;
              if (!(proxyStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_9__.PROXY_STATUSES.BLOCK_CONNECT)) {
                _context.n = 2;
                break;
              }
              return _context.a(2);
            case 2:
              _context.n = 3;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getPauseSetting();
            case 3:
              pauseSetting = _context.v;
              pauseTime = (pauseSetting === null || pauseSetting === void 0 ? void 0 : pauseSetting.pause_time) || 0;
              lastTime = pauseTime - Math.floor(Date.now() / 1000);
              if (lastTime > 0) {
                setIsPaused(true);
                setTimeLeft(lastTime);
              } else {
                setIsPaused(false);
                setTimeLeft(0);
              }
            case 4:
              return _context.a(2);
          }
        }, _callee);
      }));
      return function initializePauseState() {
        return _ref2.apply(this, arguments);
      };
    }();
    initializePauseState()["catch"](function (err) {
      return (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_5__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_5__.LOG_LEVELS.ERROR, "Failed to initialize pause state:", err);
    });
  }, []);
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    if (!isPaused || timeLeft <= 0) return;
    var timerId = setInterval(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
      var proxyStatus;
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.n) {
          case 0:
            _context2.n = 1;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getProxyStatus();
          case 1:
            proxyStatus = _context2.v;
            setTimeLeft(function (prev) {
              if (prev <= 1) {
                clearInterval(timerId);
                if (proxyStatus !== _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_9__.PROXY_STATUSES.BLOCK_CONNECT) {
                  resumeConnection();
                }
                return 0;
              }
              return prev - 1;
            });
          case 2:
            return _context2.a(2);
        }
      }, _callee2);
    })), 1000);
    return function () {
      return clearInterval(timerId);
    };
  }, [isPaused, timeLeft]);
  var handlePause = /*#__PURE__*/function () {
    var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(e, duration) {
      var message, currentProxy;
      return _regenerator().w(function (_context3) {
        while (1) switch (_context3.n) {
          case 0:
            e.preventDefault();
            setIsPaused(true);
            setTimeLeft(duration);
            setShowPausePopup(false);
            setPauseCountry();
            message = {
              action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.SET_PAUSE,
              pause_time: Math.floor(Date.now() / 1000) + duration,
              pause: true,
              killSwitch: settings.killSwitch
            };
            _context3.n = 1;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getCurrentProxy();
          case 1:
            currentProxy = _context3.v;
            message.pauseProxy = currentProxy && Object.keys(currentProxy) ? currentProxy : null;
            _context3.n = 2;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_8__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.SET_PAUSE), {
              method_send: 'handlePause'
            });
          case 2:
            _context3.n = 3;
            return _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage(message);
          case 3:
            _context3.n = 4;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_8__["default"].addEvents('extension.pause', {
              pause_proxy: function (_ref5) {
                var username = _ref5.username,
                  password = _ref5.password,
                  rest = _objectWithoutProperties(_ref5, _excluded);
                return rest;
              }((message === null || message === void 0 ? void 0 : message.pauseProxy) || {})
            });
          case 4:
            return _context3.a(2);
        }
      }, _callee3);
    }));
    return function handlePause(_x, _x2) {
      return _ref4.apply(this, arguments);
    };
  }();
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_Statuses_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].btn, " ").concat(showPausePopup && _Statuses_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].open),
    onClick: function onClick() {
      return setShowPausePopup(function (prev) {
        return !prev;
      });
    },
    disabled: isPaused || processConnect
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_PauseIconSVG__WEBPACK_IMPORTED_MODULE_6__["default"], null), showPausePopup && !isPaused && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].pauseOptions,
    onClick: function onClick(e) {
      return e.stopPropagation();
    }
  }, pauseOptions.map(function (option) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: option.value,
      onClick: function onClick(e) {
        return handlePause(e, option.value);
      },
      className: _Statuses_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].pauseOption
    }, option.label);
  })));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PauseBtn);

/***/ }),

/***/ "./src/components/VpnControls/Statuses/Statuses.module.css":
/*!*****************************************************************!*\
  !*** ./src/components/VpnControls/Statuses/Statuses.module.css ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Statuses_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./Statuses.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/VpnControls/Statuses/Statuses.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Statuses_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Statuses_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Statuses_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Statuses_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/VpnControls/VpnControls.jsx":
/*!****************************************************!*\
  !*** ./src/components/VpnControls/VpnControls.jsx ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _svg_LoginIconSVG__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @svg/LoginIconSVG */ "./src/components/shared/svg/LoginIconSVG.jsx");
/* harmony import */ var _svg_LoginIconLightSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/LoginIconLightSVG */ "./src/components/shared/svg/LoginIconLightSVG.jsx");
/* harmony import */ var _Statuses_NotConnectedStatus__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./Statuses/NotConnectedStatus */ "./src/components/VpnControls/Statuses/NotConnectedStatus.jsx");
/* harmony import */ var _Statuses_ConnectingStatus__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Statuses/ConnectingStatus */ "./src/components/VpnControls/Statuses/ConnectingStatus.jsx");
/* harmony import */ var _Statuses_ConnectedStatus__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./Statuses/ConnectedStatus */ "./src/components/VpnControls/Statuses/ConnectedStatus.jsx");
/* harmony import */ var _VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./VpnControls.module.css */ "./src/components/VpnControls/VpnControls.module.css");







var VpnControls = function VpnControls(_ref) {
  var isConnected = _ref.isConnected,
    isBlockConnect = _ref.isBlockConnect,
    isPause = _ref.isPause,
    settings = _ref.settings,
    onConnect = _ref.onConnect,
    onDisconnect = _ref.onDisconnect,
    onAutoDisconnect = _ref.onAutoDisconnect,
    connectSelectIpByStatus = _ref.connectSelectIpByStatus,
    setPause = _ref.setPause,
    processConnect = _ref.processConnect,
    selectedCountry = _ref.selectedCountry,
    cityCode = _ref.cityCode,
    pauseCountry = _ref.pauseCountry,
    theme = _ref.theme,
    setPauseCountry = _ref.setPauseCountry,
    cancelConnect = _ref.cancelConnect,
    processConnectAfterPause = _ref.processConnectAfterPause,
    processDisconnect = _ref.processDisconnect,
    cancelDisconnect = _ref.cancelDisconnect,
    userData = _ref.userData,
    apiCountries = _ref.apiCountries;
  var noConnectStatus = !processConnectAfterPause && !isConnected && !isPause && !processConnect && !isBlockConnect && !processDisconnect;
  var connectStatus = (isConnected || isPause || isBlockConnect || processDisconnect) && !processConnect;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].iconWrapper
  }, theme === "dark" ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_LoginIconLightSVG__WEBPACK_IMPORTED_MODULE_2__["default"], null) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_LoginIconSVG__WEBPACK_IMPORTED_MODULE_1__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].controls
  }, noConnectStatus && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Statuses_NotConnectedStatus__WEBPACK_IMPORTED_MODULE_3__["default"], {
    onConnect: onConnect,
    theme: theme,
    userData: userData,
    apiCountries: apiCountries
  }), processConnect && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Statuses_ConnectingStatus__WEBPACK_IMPORTED_MODULE_4__["default"], {
    cancelConnect: cancelConnect
  }), connectStatus && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Statuses_ConnectedStatus__WEBPACK_IMPORTED_MODULE_5__["default"], {
    selectedCountry: selectedCountry,
    isBlockConnect: isBlockConnect,
    cityCode: cityCode,
    pauseState: [isPause, setPause],
    connectSelectIpByStatus: connectSelectIpByStatus,
    processConnect: processConnect,
    settings: settings,
    pauseCountry: pauseCountry,
    disconnect: onDisconnect,
    onAutoDisconnect: onAutoDisconnect,
    setPauseCountry: setPauseCountry,
    processConnectAfterPause: processConnectAfterPause,
    cancelConnect: cancelConnect,
    processDisconnect: processDisconnect,
    cancelDisconnect: cancelDisconnect
  })));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VpnControls);

/***/ }),

/***/ "./src/components/VpnControls/VpnControls.module.css":
/*!***********************************************************!*\
  !*** ./src/components/VpnControls/VpnControls.module.css ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./VpnControls.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/VpnControls/VpnControls.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_VpnControls_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/VpnHeader.jsx":
/*!**************************************!*\
  !*** ./src/components/VpnHeader.jsx ***!
  \**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _VpnHeaderConnected__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./VpnHeaderConnected */ "./src/components/VpnHeaderConnected.jsx");
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @common/functions/checkSubscriptions */ "./src/common/functions/checkSubscriptions.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");





var VpnHeader = function VpnHeader(_ref) {
  var _userData$subscriptio, _userData$subscriptio2, _userData$subscriptio3;
  var isConnected = _ref.isConnected,
    isBlockConnect = _ref.isBlockConnect,
    processConnect = _ref.processConnect,
    isPause = _ref.isPause,
    userData = _ref.userData,
    cancelStatus = _ref.cancelStatus,
    ping = _ref.ping,
    processConnectAfterPause = _ref.processConnectAfterPause,
    processDisconnect = _ref.processDisconnect;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__["default"]),
    t = _useContext.t;
  var isConnectedStatus = !processConnect && isConnected && (!isPause || processConnectAfterPause) && !processDisconnect;
  var isBlockedStatus = !processConnect && isBlockConnect;
  var isPreConnect = processConnect || processConnectAfterPause;
  var isConnect = isConnected || !processDisconnect && isPause || isBlockConnect;
  var subscriptionTrialStatus = (userData === null || userData === void 0 || (_userData$subscriptio = userData.subscription_info) === null || _userData$subscriptio === void 0 ? void 0 : _userData$subscriptio.status) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_4__.SUBSCRIPTION_STATUSES.TRIAL;
  var trialPeriodUntil = userData === null || userData === void 0 || (_userData$subscriptio2 = userData.subscription_info) === null || _userData$subscriptio2 === void 0 ? void 0 : _userData$subscriptio2.trial_period_until;
  var isTrial = subscriptionTrialStatus && trialPeriodUntil < new Date();
  var subscribedExpDate = userData === null || userData === void 0 || (_userData$subscriptio3 = userData.subscription_info) === null || _userData$subscriptio3 === void 0 ? void 0 : _userData$subscriptio3.subscription_exp_date;
  var subscribedStatus = (0,_common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_3__.getSubscriptionStatus)(subscribedExpDate, false, isTrial);
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "vpn-menu " + (isConnectedStatus ? "connected" : "") + (isBlockedStatus ? "blocked" : "")
  }, cancelStatus ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: "vpn-status"
  }, t('pre_cancel')) : processDisconnect ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: "vpn-status"
  }, t('pre_disconnected')) : isPreConnect ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: "vpn-status"
  }, t('pre_connected')) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "vpn-status"
  }, isConnect ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_VpnHeaderConnected__WEBPACK_IMPORTED_MODULE_1__["default"], {
    userData: userData,
    isPause: isPause,
    isBlockConnect: isBlockConnect,
    ping: ping,
    processConnect: processConnect,
    processConnectAfterPause: processConnectAfterPause
  }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, subscribedStatus ? subscribedStatus : t('status_not_connected'))));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (VpnHeader);

/***/ }),

/***/ "./src/components/VpnHeaderConnected.jsx":
/*!***********************************************!*\
  !*** ./src/components/VpnHeaderConnected.jsx ***!
  \***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ VpnHeaderConnected)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../context/LanguageContext */ "./src/context/LanguageContext.js");


function VpnHeaderConnected(_ref) {
  var isPause = _ref.isPause,
    userData = _ref.userData,
    ping = _ref.ping,
    isBlockConnect = _ref.isBlockConnect,
    processConnect = _ref.processConnect,
    processConnectAfterPause = _ref.processConnectAfterPause;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var blockConnection = isBlockConnect && !processConnect && !processConnectAfterPause;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "vpn-header__connected"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, "IP: ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: "bold"
  }, (userData === null || userData === void 0 ? void 0 : userData.ip) || "Unknown")), isPause ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t("paused")) : blockConnection ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t("connection_lost")) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t("ping"), ": ", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: "bold"
  }, ping && ping + t("ms"))));
}

/***/ }),

/***/ "./src/components/pages/ContactUs/ContactUs.jsx":
/*!******************************************************!*\
  !*** ./src/components/pages/ContactUs/ContactUs.jsx ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var lucide_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! lucide-react */ "./node_modules/lucide-react/dist/esm/icons/arrow-left.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _src_tools_tools__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @src/tools/tools */ "./src/tools/tools.js");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_services_ApiClient__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _src_components_shared_components_Textarea_Textarea__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @src/components/shared/components/Textarea/Textarea */ "./src/components/shared/components/Textarea/Textarea.jsx");
/* harmony import */ var _src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @src/components/shared/components/Button */ "./src/components/shared/components/Button.jsx");
/* harmony import */ var _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./ContactUs.module.css */ "./src/components/pages/ContactUs/ContactUs.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _svg_ReportProblemFeedbackSVG__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @svg/ReportProblemFeedbackSVG */ "./src/components/shared/svg/ReportProblemFeedbackSVG.jsx");
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }










var ContactUs = function ContactUs(_ref) {
  var setView = _ref.setView,
    token = _ref.token,
    setConnectError = _ref.setConnectError,
    view = _ref.view;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_1__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__["default"]),
    t = _useContext.t;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(""),
    _useState2 = _slicedToArray(_useState, 2),
    textareaValue = _useState2[0],
    setTextareaValue = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false),
    _useState4 = _slicedToArray(_useState3, 2),
    isLoading = _useState4[0],
    setIsLoading = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false),
    _useState6 = _slicedToArray(_useState5, 2),
    hasTextareaError = _useState6[0],
    setHasTextareaError = _useState6[1];
  var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(false),
    _useState8 = _slicedToArray(_useState7, 2),
    isSuccess = _useState8[0],
    setIsSuccess = _useState8[1];
  var messageRef = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)(null);
  var _parseJwt = (0,_src_tools_tools__WEBPACK_IMPORTED_MODULE_3__.parseJwt)(token),
    payload = _parseJwt.payload;
  var email = payload !== null && payload !== void 0 && payload.sub ? JSON.parse(payload.sub).email : null;
  (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_8__["default"].addEvents('extension.show_contact_us');
  }, []);
  var handleSubmit = /*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(e) {
      var response;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.n) {
          case 0:
            e.preventDefault();
            if (!(textareaValue.length < 5)) {
              _context.n = 1;
              break;
            }
            setHasTextareaError(true);
            messageRef.current.scrollIntoView({
              behavior: 'smooth',
              block: 'center'
            });
            return _context.a(2);
          case 1:
            setIsLoading(true);
            _context.n = 2;
            return _services_ApiClient__WEBPACK_IMPORTED_MODULE_4___default().sendSuggestions({
              email: email,
              message: textareaValue
            });
          case 2:
            response = _context.v;
            if (!response.success) {
              _context.n = 4;
              break;
            }
            setIsSuccess(true);
            _context.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_8__["default"].addEvents('extension.send_contact_us_form', textareaValue);
          case 3:
            _context.n = 5;
            break;
          case 4:
            setConnectError(response.error || "Error ".concat(response.status));
            _context.n = 5;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_8__["default"].addEvents('extension.error_send_contact_us_form', response.status);
          case 5:
            setIsLoading(false);
          case 6:
            return _context.a(2);
        }
      }, _callee);
    }));
    return function handleSubmit(_x) {
      return _ref2.apply(this, arguments);
    };
  }();
  (0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
    if (hasTextareaError) {
      var timer = setTimeout(function () {
        setHasTextareaError(false);
      }, 3000);
      return function () {
        return clearTimeout(timer);
      };
    }
  }, [hasTextareaError]);
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].container
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].header,
    onClick: function onClick() {
      view === 'help/contact_us' ? setView('help') : setView('profile');
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(lucide_react__WEBPACK_IMPORTED_MODULE_0__["default"], {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].headerIcon
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].headerTitle
  }, t('contact_us'))), isSuccess ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].successContactUsWrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_svg_ReportProblemFeedbackSVG__WEBPACK_IMPORTED_MODULE_9__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("p", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].successContactUsTitle
  }, t('contact_us_title')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("p", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].successContactUsText
  }, t('contact_us_text')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("button", {
    className: "".concat(_ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].successContactUsBtn, " ").concat(_ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].button),
    onClick: function onClick() {
      return setView('help');
    }
  }, t('back_to_settings'))) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("div", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].subtitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("span", null, t("well_reply_to") + " "), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement("span", {
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].headerTitleBold
  }, email)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_src_components_shared_components_Textarea_Textarea__WEBPACK_IMPORTED_MODULE_5__["default"], {
    innerRef: messageRef,
    value: textareaValue,
    onChange: function onChange(value) {
      hasTextareaError && setHasTextareaError(false);
      setTextareaValue(value);
    },
    placeholder: t('type_your_message'),
    error: hasTextareaError
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1___default().createElement(_src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_6__["default"], {
    disabled: isLoading,
    className: _ContactUs_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].button,
    children: t('submit'),
    onClick: handleSubmit
  })));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ContactUs);

/***/ }),

/***/ "./src/components/pages/ContactUs/ContactUs.module.css":
/*!*************************************************************!*\
  !*** ./src/components/pages/ContactUs/ContactUs.module.css ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ContactUs_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./ContactUs.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ContactUs/ContactUs.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ContactUs_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ContactUs_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ContactUs_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ContactUs_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.jsx":
/*!******************************************************************************!*\
  !*** ./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.jsx ***!
  \******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/BackArrowSVG */ "./src/components/shared/svg/BackArrowSVG.jsx");
/* harmony import */ var _svg_ExportSettingSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/ExportSettingSVG */ "./src/components/shared/svg/ExportSettingSVG.jsx");
/* harmony import */ var _svg_ImportSettingsSVG__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @svg/ImportSettingsSVG */ "./src/components/shared/svg/ImportSettingsSVG.jsx");
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @common/services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_common_services_StorageService__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _src_components_shared_components_Selector_Selector__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @src/components/shared/components/Selector/Selector */ "./src/components/shared/components/Selector/Selector.jsx");
/* harmony import */ var _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./GeneralSettingsScreen.module.css */ "./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_11__);
/* harmony import */ var _services_TranslateService__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @services/TranslateService */ "./src/common/services/TranslateService.js");
/* harmony import */ var _services_TranslateService__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_services_TranslateService__WEBPACK_IMPORTED_MODULE_12__);
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }














var GeneralSettingsScreen = function GeneralSettingsScreen(_ref) {
  var _userData$subscriptio, _userData$subscriptio2, _userDataMain$subscri;
  var onNavigate = _ref.onNavigate,
    setAppearance = _ref.setAppearance,
    userDataMain = _ref.userDataMain,
    setConnectError = _ref.setConnectError;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    saveSettings = _useState2[0],
    setSaveSettings = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState4 = _slicedToArray(_useState3, 2),
    shareData = _useState4[0],
    setShareData = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('System'),
    _useState6 = _slicedToArray(_useState5, 2),
    localAppearance = _useState6[0],
    setLocalAppearance = _useState6[1];
  var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState8 = _slicedToArray(_useState7, 2),
    userData = _useState8[0],
    setUserData = _useState8[1];
  var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState0 = _slicedToArray(_useState9, 2),
    openSelectorId = _useState0[0],
    setOpenSelectorId = _useState0[1];
  var fileInputRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_5__["default"]),
    language = _useContext.language,
    changeLanguage = _useContext.changeLanguage,
    t = _useContext.t;
  var subscriptionTrialStatus = (userData === null || userData === void 0 || (_userData$subscriptio = userData.subscription_info) === null || _userData$subscriptio === void 0 ? void 0 : _userData$subscriptio.status) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_13__.SUBSCRIPTION_STATUSES.TRIAL;
  var trialPeriodUntil = userData === null || userData === void 0 || (_userData$subscriptio2 = userData.subscription_info) === null || _userData$subscriptio2 === void 0 ? void 0 : _userData$subscriptio2.trial_period_until;
  var isTrial = subscriptionTrialStatus && trialPeriodUntil < new Date();
  var isSubscribe = (userDataMain === null || userDataMain === void 0 || (_userDataMain$subscri = userDataMain.subscription_info) === null || _userDataMain$subscri === void 0 ? void 0 : _userDataMain$subscri.subscription_exp_date) || isTrial;
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var loadSettings = /*#__PURE__*/function () {
      var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var generalSettings, authData, _t;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              _context.p = 0;
              _context.n = 1;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().getGeneralSettings();
            case 1:
              generalSettings = _context.v;
              setSaveSettings(generalSettings.saveSettings || false);
              setShareData(generalSettings.shareData || false);
              setLocalAppearance(generalSettings.appearance || 'System');
              if (userData) {
                _context.n = 3;
                break;
              }
              _context.n = 2;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().getAuthData();
            case 2:
              authData = _context.v;
              setUserData(_objectSpread({}, authData.userData));
            case 3:
              _context.n = 4;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.load_general_setting');
            case 4:
              _context.n = 6;
              break;
            case 5:
              _context.p = 5;
              _t = _context.v;
              (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, 'Failed to load settings:', _t);
              _context.n = 6;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.general_setting', '', 'Failed to load settings:' + _t.message);
            case 6:
              _context.n = 7;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.show_general_setting');
            case 7:
              return _context.a(2);
          }
        }, _callee, null, [[0, 5]]);
      }));
      return function loadSettings() {
        return _ref2.apply(this, arguments);
      };
    }();
    loadSettings();
  }, []);
  var handleSaveSettings = /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
      var generalSettings, _t2;
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.p = _context2.n) {
          case 0:
            _context2.p = 0;
            _context2.n = 1;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().getGeneralSettings();
          case 1:
            generalSettings = _context2.v;
            setSaveSettings(function (prev) {
              return !prev;
            });
            _context2.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().saveGeneralSettings(_objectSpread(_objectSpread({}, generalSettings), {}, {
              saveSettings: !generalSettings.saveSettings
            }));
          case 2:
            _context2.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.save_setting', '', saveSettings ? 'enabled' : 'disabled');
          case 3:
            _context2.n = 5;
            break;
          case 4:
            _context2.p = 4;
            _t2 = _context2.v;
            _context2.n = 5;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.error_save_setting', _t2);
          case 5:
            return _context2.a(2);
        }
      }, _callee2, null, [[0, 4]]);
    }));
    return function handleSaveSettings() {
      return _ref3.apply(this, arguments);
    };
  }();
  var handleShareDate = /*#__PURE__*/function () {
    var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
      var generalSettings, _t3;
      return _regenerator().w(function (_context3) {
        while (1) switch (_context3.p = _context3.n) {
          case 0:
            _context3.p = 0;
            _context3.n = 1;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().getGeneralSettings();
          case 1:
            generalSettings = _context3.v;
            setShareData(function (prev) {
              return !prev;
            });
            _context3.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().saveGeneralSettings(_objectSpread(_objectSpread({}, generalSettings), {}, {
              shareData: !generalSettings.shareData
            }));
          case 2:
            _context3.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.share_data', shareData ? 'enabled' : 'disabled');
          case 3:
            _context3.n = 5;
            break;
          case 4:
            _context3.p = 4;
            _t3 = _context3.v;
            _context3.n = 5;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.error_share_data', _t3);
          case 5:
            return _context3.a(2);
        }
      }, _callee3, null, [[0, 4]]);
    }));
    return function handleShareDate() {
      return _ref4.apply(this, arguments);
    };
  }();
  var handleLanguageChange = function handleLanguageChange(newLanguage) {
    changeLanguage(newLanguage);
    _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.language_change', newLanguage);
  };
  var handleAppearanceChange = /*#__PURE__*/function () {
    var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(newAppearance) {
      var generalSettings, _t4;
      return _regenerator().w(function (_context4) {
        while (1) switch (_context4.p = _context4.n) {
          case 0:
            setLocalAppearance(newAppearance);
            setAppearance(newAppearance);
            _context4.p = 1;
            _context4.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().getGeneralSettings();
          case 2:
            generalSettings = _context4.v;
            _context4.n = 3;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().saveGeneralSettings(_objectSpread(_objectSpread({}, generalSettings), {}, {
              appearance: newAppearance
            }));
          case 3:
            _context4.n = 4;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.appearance_change', newAppearance);
          case 4:
            _context4.n = 6;
            break;
          case 5:
            _context4.p = 5;
            _t4 = _context4.v;
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, 'Failed to update appearance:', _t4);
            _context4.n = 6;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.error_appearance_change', _t4);
          case 6:
            return _context4.a(2);
        }
      }, _callee4, null, [[1, 5]]);
    }));
    return function handleAppearanceChange(_x) {
      return _ref5.apply(this, arguments);
    };
  }();
  var handleExportSettings = /*#__PURE__*/function () {
    var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
      var data, settingsData, jsonString, blob, url, link, _t5;
      return _regenerator().w(function (_context5) {
        while (1) switch (_context5.p = _context5.n) {
          case 0:
            _context5.p = 0;
            if (isSubscribe) {
              _context5.n = 1;
              break;
            }
            return _context5.a(2);
          case 1:
            _context5.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().getAllSettings();
          case 2:
            data = _context5.v;
            if (!data || !data.settings) {
              data.settings = {};
            }
            data.settings.autoConnect = false;
            settingsData = {
              settings: data.settings || {},
              generalSettings: data.generalSettings || {},
              securitySettings: data.securitySettings || {}
            };
            jsonString = JSON.stringify(settingsData, null, 2);
            blob = new Blob([jsonString], {
              type: 'application/json'
            });
            url = URL.createObjectURL(blob);
            link = document.createElement('a');
            link.href = url;
            link.download = 'settings.json';
            document.body.appendChild(link);
            link.click();
            document.body.removeChild(link);
            URL.revokeObjectURL(url);
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.INFO, 'Settings exported:', settingsData);
            _context5.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.export_data', settingsData);
          case 3:
            _context5.n = 5;
            break;
          case 4:
            _context5.p = 4;
            _t5 = _context5.v;
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, 'Failed to export settings:', _t5);
            _context5.n = 5;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.error_export_data', _t5);
          case 5:
            return _context5.a(2);
        }
      }, _callee5, null, [[0, 4]]);
    }));
    return function handleExportSettings() {
      return _ref6.apply(this, arguments);
    };
  }();
  var isBrokenFilePickerEnvironment = function isBrokenFilePickerEnvironment() {
    var ua = navigator.userAgent;
    var chromeMatch = ua.match(/Chrome\/(\d+)/);
    var chromeVersion = Number(chromeMatch[1]);
    var isEdgeLinux = ua.includes('Edg/') && ua.includes('Linux');
    var isFirefox = typeof browser !== 'undefined' && !!browser.runtime;
    return chromeVersion > 139 && ua.includes('Linux') || isEdgeLinux || isFirefox;
  };
  var handleImportSettings = function handleImportSettings() {
    var _fileInputRef$current;
    if (!isSubscribe) {
      return;
    }
    if (isBrokenFilePickerEnvironment()) {
      _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat((_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_11___default().OPEN_IMPORT_SETTINGS)), {
        method_send: 'handleImportSettings'
      });
      _common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().runtime.sendMessage({
        action: (_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_11___default().OPEN_IMPORT_SETTINGS)
      }, function (response) {
        if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().runtime).lastError) {
          (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, 'Error sending message to open import settings:', chrome.runtime.lastError);
          _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.error_import_data', chrome.runtime.lastError);
        } else {
          (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.INFO, 'Message sent to open import settings:', response);
          _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.import_data', response);
        }
      });
      return;
    }
    (_fileInputRef$current = fileInputRef.current) === null || _fileInputRef$current === void 0 || _fileInputRef$current.click();
    _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.import_data');
  };
  var handleOpenSettings = function handleOpenSettings() {
    _common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().tabs.create({
      url: _common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().runtime.getURL('index.html')
    });
  };
  var handleFileChange = /*#__PURE__*/function () {
    var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(e) {
      var _e$target$files;
      var file, action, data, _t6;
      return _regenerator().w(function (_context6) {
        while (1) switch (_context6.p = _context6.n) {
          case 0:
            file = (_e$target$files = e.target.files) === null || _e$target$files === void 0 ? void 0 : _e$target$files[0];
            action = (_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_11___default().IMPORT_SETTINGS);
            if (file) {
              _context6.n = 1;
              break;
            }
            return _context6.a(2);
          case 1:
            _context6.p = 1;
            _context6.n = 2;
            return readFileAsText(file);
          case 2:
            data = _context6.v;
            if (data) {
              _context6.n = 3;
              break;
            }
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, 'No file content read.');
            alert('Error reading file.');
            return _context6.a(2);
          case 3:
            _context6.n = 4;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat(action), {
              method_send: 'handleFileChange'
            });
          case 4:
            _common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().runtime.sendMessage({
              action: action,
              data: data
            }, function (response) {
              if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().runtime).lastError) {
                (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, "Error ".concat(action, ":"), (_common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().runtime).lastError);
              } else {
                (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.INFO, "".concat(action, " response:"), response);
                if (!response || !response.success) {
                  setConnectError(response === null || response === void 0 ? void 0 : response.error);
                  return;
                }
                setSaveSettings(response.dataToSave.generalSettings.saveSettings || false);
                setShareData(response.dataToSave.generalSettings.shareData || false);
                changeLanguage(response.dataToSave.generalSettings.language || 'en');
                setLocalAppearance(response.dataToSave.generalSettings.appearance || 'System');
                setAppearance(response.dataToSave.generalSettings.appearance || 'System');
                alert(response.message);
                if (e.target) {
                  e.target.value = null;
                }
              }
            });
            _context6.n = 6;
            break;
          case 5:
            _context6.p = 5;
            _t6 = _context6.v;
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, _t6);
            setConnectError(_services_TranslateService__WEBPACK_IMPORTED_MODULE_12___default().t('import_failed'));
          case 6:
            e.preventDefault();
          case 7:
            return _context6.a(2);
        }
      }, _callee6, null, [[1, 5]]);
    }));
    return function handleFileChange(_x2) {
      return _ref7.apply(this, arguments);
    };
  }();
  var readFileAsText = function readFileAsText(file) {
    return new Promise(function (resolve, reject) {
      var reader = new FileReader();
      reader.onload = function () {
        return resolve(reader.result);
      };
      reader.onerror = function () {
        (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_1__.LOG_LEVELS.ERROR, 'FileReader error:', reader.error);
        alert('Error reading file.');
        reject(reader.error);
      };
      reader.readAsText(file);
    });
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].container
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    type: "file",
    ref: fileInputRef,
    style: {
      display: 'none'
    },
    accept: ".json",
    onChange: handleFileChange
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].header,
    onClick: onNavigate
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].backButton
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_2__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].headerTitle
  }, t('setting_general'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].list
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].saveSettingsItem
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemHeader
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemTitle
  }, t('setting_general_save_browser')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemDescription
  }, t('setting_general_save_browser_description'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleSaveSettings,
    className: saveSettings ? _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleActive : _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: saveSettings ? _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleActiveThumb : _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleThumb
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].backupSettingsItem
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemHeader
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemTitle
  }, t('setting_general_backup')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemDescription
  }, t('setting_general_backup_description'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemContent
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].exportButton, " ").concat(!isSubscribe ? _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleDisable : ""),
    onClick: handleExportSettings
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ExportSettingSVG__WEBPACK_IMPORTED_MODULE_3__.ExportSettingSVG, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, t('setting_general_backup_button'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].importButton, " ").concat(!isSubscribe ? _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleDisable : ""),
    onClick: handleImportSettings
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ImportSettingsSVG__WEBPACK_IMPORTED_MODULE_4__.ImportSettingsSVG, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, t('setting_general_restore_button')))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, !_common_browserApi__WEBPACK_IMPORTED_MODULE_10___default().isFireFoxBrowser() ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemDescription
  }, t('cant_add_a_file'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].buttonNewTab,
    onClick: handleOpenSettings
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: ""
  }, t('new_tab')))) : null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].shareDataItem
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemHeader
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemTitle
  }, t('setting_general_share_data')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemDescription
  }, t('setting_general_share_data_description'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleShareDate,
    className: shareData ? _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleActive : _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: shareData ? _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleActiveThumb : _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemToggleThumb
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].appearanceItem
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemHeader
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemTitle
  }, t('setting_general_appearance'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Selector_Selector__WEBPACK_IMPORTED_MODULE_7__["default"], {
    list: [["System", t("System")], ["Light", t("Light")], ["Dark", t("Dark")]],
    selectedElement: localAppearance,
    onChange: handleAppearanceChange,
    selectorId: "appearance",
    openSelectorId: openSelectorId,
    setOpenSelectorId: setOpenSelectorId
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].languageItem
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemHeader
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].itemTitle
  }, t('setting_general_language'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Selector_Selector__WEBPACK_IMPORTED_MODULE_7__["default"], {
    list: [["en", t("English")], ["de", t("Deutsch")]],
    selectedElement: language,
    onChange: handleLanguageChange,
    selectorId: "language",
    openSelectorId: openSelectorId,
    setOpenSelectorId: setOpenSelectorId
  }))));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (GeneralSettingsScreen);

/***/ }),

/***/ "./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.module.css":
/*!*************************************************************************************!*\
  !*** ./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.module.css ***!
  \*************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./GeneralSettingsScreen.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GeneralSettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/GetHelp/GetHelp.jsx":
/*!**************************************************!*\
  !*** ./src/components/pages/GetHelp/GetHelp.jsx ***!
  \**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @src/components/shared/components/Button */ "./src/components/shared/components/Button.jsx");
/* harmony import */ var _svg_RightArrowSVG__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @svg/RightArrowSVG */ "./src/components/shared/svg/RightArrowSVG.jsx");
/* harmony import */ var _svg_ReportProblemSVG__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @svg/ReportProblemSVG */ "./src/components/shared/svg/ReportProblemSVG.jsx");
/* harmony import */ var _svg_ContactUsSVG__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @svg/ContactUsSVG */ "./src/components/shared/svg/ContactUsSVG.jsx");
/* harmony import */ var _svg_NeedHelpSVG__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @svg/NeedHelpSVG */ "./src/components/shared/svg/NeedHelpSVG.jsx");
/* harmony import */ var _src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @src/hooks/useBorderManager */ "./src/hooks/useBorderManager.js");
/* harmony import */ var _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./GetHelp.module.css */ "./src/components/pages/GetHelp/GetHelp.module.css");
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }











var GetHelp = function GetHelp(_ref) {
  var setView = _ref.setView;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var _useBorderManager = (0,_src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_9__.useBorderManager)(),
    handleMouseEnter = _useBorderManager.handleMouseEnter,
    handleMouseLeave = _useBorderManager.handleMouseLeave,
    shouldRemoveBorder = _useBorderManager.shouldRemoveBorder;
  var menu = [{
    id: 'report_a_problem',
    title: t('report_a_problem'),
    Icon: _svg_ReportProblemSVG__WEBPACK_IMPORTED_MODULE_6__["default"],
    route: 'help/report_a_problem'
  }, {
    id: 'contact_us',
    title: t('contact_us'),
    Icon: _svg_ContactUsSVG__WEBPACK_IMPORTED_MODULE_7__["default"],
    route: 'help/contact_us'
  }, {
    id: 'need_help',
    title: t('need_help'),
    Icon: _svg_NeedHelpSVG__WEBPACK_IMPORTED_MODULE_8__["default"],
    link: "https://www.apexguard.com/help-center/"
  }];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_2__["default"].addEvents('extension.show_get_help');
  }, []);
  var handleDownloadLogs = /*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
      var logs, jsonString, blob, url, link, _t;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.p = _context.n) {
          case 0:
            _context.p = 0;
            _context.n = 1;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_2__["default"].getLogs();
          case 1:
            logs = _context.v;
            if (!logs) {
              logs = {};
            }
            jsonString = JSON.stringify(logs, null, 2);
            blob = new Blob([jsonString], {
              type: 'application/json'
            });
            url = URL.createObjectURL(blob);
            link = document.createElement('a');
            link.href = url;
            link.download = 'logs.json';
            document.body.appendChild(link);
            link.click();
            document.body.removeChild(link);
            URL.revokeObjectURL(url);
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_3__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_3__.LOG_LEVELS.INFO, 'Logs downloaded:', logs);
            _context.n = 2;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_2__["default"].addEvents('extension.downloaded_log');
          case 2:
            _context.n = 4;
            break;
          case 3:
            _context.p = 3;
            _t = _context.v;
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_3__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_3__.LOG_LEVELS.ERROR, 'Failed to download logs:', _t);
            _context.n = 4;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_2__["default"].addEvents('extension.error_downloaded_log', _t);
          case 4:
            return _context.a(2);
        }
      }, _callee, null, [[0, 3]]);
    }));
    return function handleDownloadLogs() {
      return _ref2.apply(this, arguments);
    };
  }();
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h2", {
    className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].title
  }, t('get_help')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].list
  }, menu.map(function (_ref3, index) {
    var id = _ref3.id,
      title = _ref3.title,
      Icon = _ref3.Icon,
      route = _ref3.route,
      link = _ref3.link;
    var isHelp = id === 'need_help';
    var Compnent = isHelp ? "a" : "div";
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Compnent, _extends({
      key: id,
      className: "".concat(_GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].listItemWrapper, " ").concat(shouldRemoveBorder(index) ? _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].noBorder : ""),
      onClick: function onClick() {
        return !isHelp && setView(route);
      },
      href: isHelp ? link : undefined
    }, isHelp ? {
      target: '_blank',
      rel: 'noopener noreferrer'
    } : {}, {
      onMouseEnter: function onMouseEnter() {
        return handleMouseEnter(index);
      },
      onMouseLeave: handleMouseLeave
    }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].listItem
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Icon, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].listItemContent
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
      className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].listItemContentTitle
    }, title), isHelp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
      className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].goToHelpCenter
    }, t('go_to_help_center')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_RightArrowSVG__WEBPACK_IMPORTED_MODULE_5__["default"], {
      className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].arrowIcon
    }))));
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].downloadLogsWrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].downloadLogsTitle
  }, t('download_logs')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _GetHelp_module_css__WEBPACK_IMPORTED_MODULE_10__["default"].downloadLogsText
  }, t('download_logs_text')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_4__["default"], {
    onClick: handleDownloadLogs
  }, t('download'))));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (GetHelp);

/***/ }),

/***/ "./src/components/pages/GetHelp/GetHelp.module.css":
/*!*********************************************************!*\
  !*** ./src/components/pages/GetHelp/GetHelp.module.css ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GetHelp_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./GetHelp.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/GetHelp/GetHelp.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GetHelp_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GetHelp_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GetHelp_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_GetHelp_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/LoginComponent.jsx":
/*!*************************************************!*\
  !*** ./src/components/pages/LoginComponent.jsx ***!
  \*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _svg_LoginIconSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/LoginIconSVG */ "./src/components/shared/svg/LoginIconSVG.jsx");
/* harmony import */ var _svg_LoginIconLightSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/LoginIconLightSVG */ "./src/components/shared/svg/LoginIconLightSVG.jsx");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }





var LoginComponent = function LoginComponent(_ref) {
  var onLogin = _ref.onLogin,
    onRegistration = _ref.onRegistration,
    theme = _ref.theme;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    isLoading = _useState2[0],
    setIsLoading = _useState2[1];
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var handleSignUpClick = function handleSignUpClick() {
    onRegistration();
  };
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_4__["default"].addEvents('extension.show_login_component');
  }, []);
  var handleLoginClick = function handleLoginClick() {
    setIsLoading(true);
    onLogin();
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "login-component"
  }, theme === 'dark' ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_LoginIconLightSVG__WEBPACK_IMPORTED_MODULE_3__["default"], null) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_LoginIconSVG__WEBPACK_IMPORTED_MODULE_2__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h1", {
    className: "login-title"
  }, t('login_title')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "login-buttons"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "login-button",
    onClick: handleLoginClick,
    disabled: isLoading,
    "aria-label": "Log in to ApexGuard"
  }, isLoading ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, t('loading')) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, t('log_in'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("a", {
    href: "#",
    onClick: function onClick(e) {
      e.preventDefault();
      handleSignUpClick();
    },
    className: "signup-link",
    "aria-label": "Sign up for ApexGuard"
  }, t('sign_up'))));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LoginComponent);

/***/ }),

/***/ "./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.jsx":
/*!**********************************************************************!*\
  !*** ./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.jsx ***!
  \**********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @svg/BackArrowSVG */ "./src/components/shared/svg/BackArrowSVG.jsx");
/* harmony import */ var _svg_ArrowSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/ArrowSVG */ "./src/components/shared/svg/ArrowSVG.jsx");
/* harmony import */ var _svg_SearchSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/SearchSVG */ "./src/components/shared/svg/SearchSVG.jsx");
/* harmony import */ var _svg_FastestServerSVG__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @svg/FastestServerSVG */ "./src/components/shared/svg/FastestServerSVG.jsx");
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @common/services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_common_services_StorageService__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_8__);
/* harmony import */ var _src_hooks_useCountryState__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @src/hooks/useCountryState */ "./src/hooks/useCountryState.js");
/* harmony import */ var _src_hooks_useErrorHandler__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @src/hooks/useErrorHandler */ "./src/hooks/useErrorHandler.js");
/* harmony import */ var _SplitTunnelingList_SplitTunnelingList__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./SplitTunnelingList/SplitTunnelingList */ "./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.jsx");
/* harmony import */ var _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./NetworkAndPrivacy.module.css */ "./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_constants_server_proxy_constants__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @sw/constants/server_proxy_constants */ "./src/sw/constants/server_proxy_constants.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
/* harmony import */ var _common_functions_apiGatewaysForCity__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @common/functions/apiGatewaysForCity */ "./src/common/functions/apiGatewaysForCity.js");
/* harmony import */ var _common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! @common/functions/checkSubscriptions */ "./src/common/functions/checkSubscriptions.js");
/* harmony import */ var _sw_main_proxy__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @sw/main/proxy */ "./src/sw/main/proxy.js");
/* harmony import */ var _sw_main_proxy__WEBPACK_IMPORTED_MODULE_18___default = /*#__PURE__*/__webpack_require__.n(_sw_main_proxy__WEBPACK_IMPORTED_MODULE_18__);
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }




















var sendMessageAsync = function sendMessageAsync(message) {
  return new Promise(function (resolve, reject) {
    _common_browserApi__WEBPACK_IMPORTED_MODULE_8___default().runtime.sendMessage(message, function (response) {
      if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_8___default().runtime).lastError) {
        reject((_common_browserApi__WEBPACK_IMPORTED_MODULE_8___default().runtime).lastError);
      } else {
        resolve(response);
      }
    });
  });
};
var NetworkAndPrivacy = function NetworkAndPrivacy(_ref) {
  var _userDataMain$subscri, _userDataMain$subscri2, _userDataMain$subscri3, _apiCountries$find;
  var onNavigate = _ref.onNavigate,
    connectRandomIp = _ref.connectRandomIp,
    setProcessConnect = _ref.setProcessConnect,
    setConnectError = _ref.setConnectError,
    processConnect = _ref.processConnect,
    checkAndConnect = _ref.checkAndConnect,
    userDataMain = _ref.userDataMain,
    processDisconnect = _ref.processDisconnect,
    apiGatewayMain = _ref.apiGatewayMain;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    autoConnect = _useState2[0],
    setAutoConnect = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState4 = _slicedToArray(_useState3, 2),
    killSwitch = _useState4[0],
    setKillSwitch = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState6 = _slicedToArray(_useState5, 2),
    locationSpoofing = _useState6[0],
    setLocationSpoofing = _useState6[1];
  var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState8 = _slicedToArray(_useState7, 2),
    autoReloadTabs = _useState8[0],
    setAutoReloadTabs = _useState8[1];
  var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true),
    _useState0 = _slicedToArray(_useState9, 2),
    splitTunneling = _useState0[0],
    setSplitTunneling = _useState0[1];
  var _useState1 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]),
    _useState10 = _slicedToArray(_useState1, 2),
    splitTunnelingList = _useState10[0],
    setSplitTunnelingList = _useState10[1];
  var _useState11 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState12 = _slicedToArray(_useState11, 2),
    selectiveProxy = _useState12[0],
    setSelectiveProxy = _useState12[1];
  var _useState13 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]),
    _useState14 = _slicedToArray(_useState13, 2),
    selectiveProxyList = _useState14[0],
    setSelectiveProxyList = _useState14[1];
  var _useState15 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState16 = _slicedToArray(_useState15, 2),
    threatProtection = _useState16[0],
    setThreatProtection = _useState16[1];
  var _useState17 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState18 = _slicedToArray(_useState17, 2),
    newSplitEntry = _useState18[0],
    setNewSplitEntry = _useState18[1];
  var _useState19 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState20 = _slicedToArray(_useState19, 2),
    selectedAutoConnectCountry = _useState20[0],
    setSelectedAutoConnectCountry = _useState20[1];
  var _useState21 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState22 = _slicedToArray(_useState21, 2),
    dropdownOpen = _useState22[0],
    setDropdownOpen = _useState22[1];
  var _useState23 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState24 = _slicedToArray(_useState23, 2),
    searchQuery = _useState24[0],
    setSearchQuery = _useState24[1];
  var _useState25 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState26 = _slicedToArray(_useState25, 2),
    changeApiGateway = _useState26[0],
    setChangeApiGateway = _useState26[1];
  var _useState27 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState28 = _slicedToArray(_useState27, 2),
    apiGatewayDropdownOpen = _useState28[0],
    setApiGatewayDropdownOpen = _useState28[1];
  var _useState29 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(apiGatewayMain),
    _useState30 = _slicedToArray(_useState29, 2),
    selectedApiGateway = _useState30[0],
    setSelectedApiGateway = _useState30[1];
  var dropdownRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  var dropdownApiGatewayRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  var _useCountryState = (0,_src_hooks_useCountryState__WEBPACK_IMPORTED_MODULE_9__["default"])(),
    apiCountries = _useCountryState.apiCountries;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_5__["default"]),
    t = _useContext.t;
  var subscriptionTrialStatus = (userDataMain === null || userDataMain === void 0 || (_userDataMain$subscri = userDataMain.subscription_info) === null || _userDataMain$subscri === void 0 ? void 0 : _userDataMain$subscri.status) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.SUBSCRIPTION_STATUSES.TRIAL;
  var trialPeriodUntil = userDataMain === null || userDataMain === void 0 || (_userDataMain$subscri2 = userDataMain.subscription_info) === null || _userDataMain$subscri2 === void 0 ? void 0 : _userDataMain$subscri2.trial_period_until;
  var isTrial = subscriptionTrialStatus && trialPeriodUntil < new Date();
  var subscribedExpDate = userDataMain === null || userDataMain === void 0 || (_userDataMain$subscri3 = userDataMain.subscription_info) === null || _userDataMain$subscri3 === void 0 ? void 0 : _userDataMain$subscri3.subscription_exp_date;
  var isSubscribe = (0,_common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_17__.checkSubscriptionStatus)(subscribedExpDate) || isTrial;
  var _useErrorHandler = (0,_src_hooks_useErrorHandler__WEBPACK_IMPORTED_MODULE_10__["default"])(),
    setGeneralError = _useErrorHandler.setGeneralError;
  var _useState31 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState32 = _slicedToArray(_useState31, 2),
    addListEntryErrorMessage = _useState32[0],
    setAddListEntryErrorMessage = _useState32[1];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var loadSettingsAndCountries = /*#__PURE__*/function () {
      var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var settings, securitySettings, _t;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              _context.p = 0;
              _context.n = 1;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getSettings();
            case 1:
              settings = _context.v;
              _context.n = 2;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getSecuritySettings();
            case 2:
              securitySettings = _context.v;
              setAutoConnect(settings.autoConnect || false);
              setKillSwitch(settings.killSwitch || false);
              setLocationSpoofing(settings.locationSpoofing || false);
              setAutoReloadTabs(settings.autoReloadTabs || false);
              setSplitTunneling(settings.splitTunneling || true);
              setSplitTunnelingList(settings.splitTunnelingList || []);
              setSelectiveProxy(settings.selectiveProxy || false);
              setSelectiveProxyList(settings.selectiveProxyList || []);
              setSelectedAutoConnectCountry(settings.selectedAutoConnectCountry || null);
              setThreatProtection(securitySettings.threatProtection || false);
              setChangeApiGateway(settings.changeApiGateway || false);
              setSelectedApiGateway(settings.selectedApiGateway || selectedApiGateway);
              _context.n = 3;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.load_network_and_privacy_setting', settings);
            case 3:
              _context.n = 5;
              break;
            case 4:
              _context.p = 4;
              _t = _context.v;
              setGeneralError(t('Failed to load settings or countries'));
              _context.n = 5;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.error_network_and_privacy_setting', '', _t.message);
            case 5:
              _context.n = 6;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.show_network_and_privacy');
            case 6:
              return _context.a(2);
          }
        }, _callee, null, [[0, 4]]);
      }));
      return function loadSettingsAndCountries() {
        return _ref2.apply(this, arguments);
      };
    }();
    loadSettingsAndCountries();
  }, []);
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var handleClickOutside = function handleClickOutside(event) {
      if (dropdownRef.current && !dropdownRef.current.contains(event.target) && dropdownApiGatewayRef.current && !dropdownApiGatewayRef.current.contains(event.target)) {
        setDropdownOpen(false);
        setSearchQuery('');
      }
      if (dropdownApiGatewayRef.current && !dropdownApiGatewayRef.current.contains(event.target) && dropdownRef.current && !dropdownRef.current.contains(event.target)) {
        setApiGatewayDropdownOpen(false);
        setSearchQuery('');
      }
    };
    document.addEventListener('mousedown', handleClickOutside);
    return function () {
      document.removeEventListener('mousedown', handleClickOutside);
    };
  }, []);
  var updateSettings = /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(newSettings) {
      var action,
        list,
        send,
        settings,
        updatedSettings,
        _args2 = arguments,
        _t2;
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.p = _context2.n) {
          case 0:
            action = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : null;
            list = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : null;
            send = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : true;
            _context2.p = 1;
            _context2.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getSettings();
          case 2:
            settings = _context2.v;
            updatedSettings = _objectSpread(_objectSpread({}, settings), newSettings);
            _context2.n = 3;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().saveSettings(updatedSettings);
          case 3:
            if (!send) {
              _context2.n = 4;
              break;
            }
            if (!action) {
              _context2.n = 4;
              break;
            }
            _context2.n = 4;
            return _common_browserApi__WEBPACK_IMPORTED_MODULE_8___default().runtime.sendMessage(list ? {
              action: action,
              list: list
            } : {
              action: action
            });
          case 4:
            _context2.n = 6;
            break;
          case 5:
            _context2.p = 5;
            _t2 = _context2.v;
            setGeneralError(t('Failed to update settings'));
          case 6:
            return _context2.a(2);
        }
      }, _callee2, null, [[1, 5]]);
    }));
    return function updateSettings(_x) {
      return _ref3.apply(this, arguments);
    };
  }();
  var reloadTabs = function reloadTabs(domain) {
    _common_browserApi__WEBPACK_IMPORTED_MODULE_8___default().tabs.query({}, function (tabs) {
      var _iterator = _createForOfIteratorHelper(tabs),
        _step;
      try {
        for (_iterator.s(); !(_step = _iterator.n()).done;) {
          var tab = _step.value;
          if (!tab.url) continue;
          try {
            var url = new URL(tab.url);
            var hostname = url.hostname;
            if (hostname === "" || hostname.startsWith("chrome://")) {
              continue;
            }
            if (matchesDomainPattern(hostname, domain)) {
              _common_browserApi__WEBPACK_IMPORTED_MODULE_8___default().tabs.reload(tab.id);
            }
          } catch (e) {
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_19__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_19__.LOG_LEVELS.WARN, "Invalid URL in tab:", tab.url);
          }
        }
      } catch (err) {
        _iterator.e(err);
      } finally {
        _iterator.f();
      }
    });
  };
  var matchesDomainPattern = function matchesDomainPattern(hostname, domainPattern) {
    domainPattern = domainPattern.trim();
    if (domainPattern.startsWith("*.")) {
      var baseDomain = domainPattern.slice(2);
      return hostname === baseDomain || hostname.endsWith(".".concat(baseDomain));
    } else if (domainPattern.startsWith("*")) {
      var _baseDomain = domainPattern.slice(1);
      return hostname === _baseDomain || hostname.endsWith(".".concat(_baseDomain));
    } else {
      return hostname === domainPattern;
    }
  };
  var updateSecuritySettings = /*#__PURE__*/function () {
    var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(newSettings) {
      var action,
        settings,
        updatedSettings,
        response,
        _args3 = arguments,
        _t3;
      return _regenerator().w(function (_context3) {
        while (1) switch (_context3.p = _context3.n) {
          case 0:
            action = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : null;
            _context3.p = 1;
            _context3.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getSecuritySettings();
          case 2:
            settings = _context3.v;
            updatedSettings = _objectSpread(_objectSpread({}, settings), newSettings);
            _context3.n = 3;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().saveSecuritySettings(updatedSettings);
          case 3:
            if (!action) {
              _context3.n = 5;
              break;
            }
            _context3.n = 4;
            return sendMessageAsync({
              action: action,
              enabled: Object.values(newSettings)[0]
            });
          case 4:
            response = _context3.v;
            if (!(!response || !response.success)) {
              _context3.n = 5;
              break;
            }
            throw new Error("Failed to send ".concat(action, ": ").concat(response.error || 'Unknown error'));
          case 5:
            _context3.n = 7;
            break;
          case 6:
            _context3.p = 6;
            _t3 = _context3.v;
            setGeneralError(t('Failed to update settings'));
          case 7:
            return _context3.a(2);
        }
      }, _callee3, null, [[1, 6]]);
    }));
    return function updateSecuritySettings(_x2) {
      return _ref4.apply(this, arguments);
    };
  }();
  var handleCountrySelect = /*#__PURE__*/function () {
    var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(countryName) {
      var _t4;
      return _regenerator().w(function (_context4) {
        while (1) switch (_context4.p = _context4.n) {
          case 0:
            _context4.n = 1;
            return updateSettings({
              selectedAutoConnectCountry: countryName
            });
          case 1:
            setSelectedAutoConnectCountry(countryName);
            setDropdownOpen(false);
            setSearchQuery('');
            if (!autoConnect) {
              _context4.n = 7;
              break;
            }
            if (!countryName) {
              _context4.n = 6;
              break;
            }
            _context4.p = 2;
            _context4.n = 3;
            return checkAndConnect(countryName);
          case 3:
            _context4.n = 5;
            break;
          case 4:
            _context4.p = 4;
            _t4 = _context4.v;
            setConnectError("Connection failed: ".concat(_t4.message));
            setProcessConnect(false);
          case 5:
            _context4.n = 7;
            break;
          case 6:
            setProcessConnect(true);
            _context4.n = 7;
            return connectRandomIp();
          case 7:
            return _context4.a(2);
        }
      }, _callee4, null, [[2, 4]]);
    }));
    return function handleCountrySelect(_x3) {
      return _ref5.apply(this, arguments);
    };
  }();
  var handleSearchChange = function handleSearchChange(e) {
    var value = e.target.value.toLowerCase();
    value = value.replace(/^\s+/, '');
    value = value.replace(/\s{2,}/g, ' ');
    if (value.trim().length === 0) {
      setSearchQuery('');
      return;
    }
    setSearchQuery(value);
  };
  var dropdownCountries = [{
    name: '',
    flag: '',
    title: t('setting_network_and_privacy_fastest_server')
  }].concat(_toConsumableArray((apiCountries || []).filter(function (country) {
    var _country$city;
    return country.name.toLowerCase().includes(searchQuery.toLowerCase().trim()) || ((_country$city = country.city) === null || _country$city === void 0 ? void 0 : _country$city.toLowerCase().includes(searchQuery.toLowerCase().trim()));
  }).map(function (country) {
    return {
      city: country.city,
      name: country.name,
      flag: country.flag,
      title: country.name
    };
  }).sort(function (a, b) {
    return a.name.localeCompare(b.name);
  })));
  var dropdownApiGateways = Object.entries(_sw_constants_server_proxy_constants__WEBPACK_IMPORTED_MODULE_14__.PROXY_SERVERS_CITIES || {}).filter(function (_ref6) {
    var _ref7 = _slicedToArray(_ref6, 2),
      apiGateway = _ref7[0],
      city = _ref7[1];
    return apiGateway.toLowerCase().includes(searchQuery.toLowerCase().trim()) || city.toLowerCase().includes(searchQuery.toLowerCase().trim());
  }).map(function (_ref8) {
    var _ref9 = _slicedToArray(_ref8, 2),
      apiGateway = _ref9[0],
      city = _ref9[1];
    return {
      gateway: apiGateway,
      city: city
    };
  }).sort(function (a, b) {
    return a.city.localeCompare(b.city);
  });
  var selectedCountryFlag = selectedAutoConnectCountry && ((_apiCountries$find = apiCountries.find(function (country) {
    return country.name === selectedAutoConnectCountry;
  })) === null || _apiCountries$find === void 0 ? void 0 : _apiCountries$find.flag);
  var handleAutoConnectChange = /*#__PURE__*/function () {
    var _ref0 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
      var _t5;
      return _regenerator().w(function (_context5) {
        while (1) switch (_context5.p = _context5.n) {
          case 0:
            if (!(!isSubscribe || !checkCountries)) {
              _context5.n = 1;
              break;
            }
            return _context5.a(2);
          case 1:
            if (!processConnect) {
              _context5.n = 3;
              break;
            }
            if (!autoConnect) {
              _context5.n = 2;
              break;
            }
            setAutoConnect(!autoConnect);
            _context5.n = 2;
            return updateSettings({
              'autoConnect': !autoConnect
            }, null, null);
          case 2:
            _context5.n = 13;
            break;
          case 3:
            setAutoConnect(!autoConnect);
            _context5.n = 4;
            return updateSettings({
              'autoConnect': !autoConnect
            }, null, null);
          case 4:
            _context5.n = 5;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.auto_connect', !autoConnect ? 'enabled' : 'disabled');
          case 5:
            if (autoConnect) {
              _context5.n = 12;
              break;
            }
            if (!selectedAutoConnectCountry) {
              _context5.n = 10;
              break;
            }
            _context5.p = 6;
            _context5.n = 7;
            return checkAndConnect(selectedAutoConnectCountry);
          case 7:
            _context5.n = 9;
            break;
          case 8:
            _context5.p = 8;
            _t5 = _context5.v;
            setConnectError("Connection failed: ".concat(_t5.message));
            setProcessConnect(false);
            _context5.n = 9;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.error_auto_connect', _t5.message);
          case 9:
            _context5.n = 11;
            break;
          case 10:
            setProcessConnect(true);
            _context5.n = 11;
            return connectRandomIp();
          case 11:
            _context5.n = 13;
            break;
          case 12:
            setAutoConnect(!autoConnect);
            _context5.n = 13;
            return updateSettings({
              'autoConnect': !autoConnect
            }, null, null);
          case 13:
            return _context5.a(2);
        }
      }, _callee5, null, [[6, 8]]);
    }));
    return function handleAutoConnectChange() {
      return _ref0.apply(this, arguments);
    };
  }();
  var handleKillSwitchChange = /*#__PURE__*/function () {
    var _ref1 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() {
      return _regenerator().w(function (_context6) {
        while (1) switch (_context6.n) {
          case 0:
            if (!(processConnect || !isSubscribe)) {
              _context6.n = 1;
              break;
            }
            return _context6.a(2);
          case 1:
            setKillSwitch(!killSwitch);
            _context6.n = 2;
            return updateSettings({
              'killSwitch': !killSwitch
            }, !killSwitch ? _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__.ENABLE_KILL_SWITCH : _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__.DISABLE_KILL_SWITCH);
          case 2:
            _context6.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.kill_switch', !killSwitch ? 'disabled' : 'enabled');
          case 3:
            return _context6.a(2);
        }
      }, _callee6);
    }));
    return function handleKillSwitchChange() {
      return _ref1.apply(this, arguments);
    };
  }();
  var handleLocationSpoofingChange = /*#__PURE__*/function () {
    var _ref10 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
      return _regenerator().w(function (_context7) {
        while (1) switch (_context7.n) {
          case 0:
            if (!(processConnect || !isSubscribe)) {
              _context7.n = 1;
              break;
            }
            return _context7.a(2);
          case 1:
            setLocationSpoofing(!locationSpoofing);
            _context7.n = 2;
            return updateSettings({
              'locationSpoofing': !locationSpoofing
            });
          case 2:
            _context7.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.locationSpoofing', !locationSpoofing ? 'disabled' : 'enabled');
          case 3:
            if (!autoReloadTabs) {
              _context7.n = 4;
              break;
            }
            _context7.n = 4;
            return (0,_sw_main_proxy__WEBPACK_IMPORTED_MODULE_18__.reloadAllTabs)();
          case 4:
            return _context7.a(2);
        }
      }, _callee7);
    }));
    return function handleLocationSpoofingChange() {
      return _ref10.apply(this, arguments);
    };
  }();
  var handleAutoReloadTabsChange = /*#__PURE__*/function () {
    var _ref11 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() {
      return _regenerator().w(function (_context8) {
        while (1) switch (_context8.n) {
          case 0:
            if (!(processConnect || !isSubscribe)) {
              _context8.n = 1;
              break;
            }
            return _context8.a(2);
          case 1:
            setAutoReloadTabs(!autoReloadTabs);
            _context8.n = 2;
            return updateSettings({
              'autoReloadTabs': !autoReloadTabs
            });
          case 2:
            _context8.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.autoReloadTabs', !autoReloadTabs ? 'disabled' : 'enabled');
          case 3:
            return _context8.a(2);
        }
      }, _callee8);
    }));
    return function handleAutoReloadTabsChange() {
      return _ref11.apply(this, arguments);
    };
  }();
  var handleThreatProtection = /*#__PURE__*/function () {
    var _ref12 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9() {
      return _regenerator().w(function (_context9) {
        while (1) switch (_context9.n) {
          case 0:
            if (!(processConnect || !isSubscribe)) {
              _context9.n = 1;
              break;
            }
            return _context9.a(2);
          case 1:
            setThreatProtection(!threatProtection);
            _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.threat_protection', '', threatProtection ? 'enabled' : 'disabled');
            _context9.n = 2;
            return updateSecuritySettings({
              'threatProtection': !threatProtection
            }, _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__.SET_THREAT_PROTECTION);
          case 2:
            return _context9.a(2);
        }
      }, _callee9);
    }));
    return function handleThreatProtection() {
      return _ref12.apply(this, arguments);
    };
  }();

  // const handleSelectiveProxyChange = async () => {
  //   setSelectiveProxy(!selectiveProxy);

  //   await updateSettings(
  //     { 'selectiveProxy' : !selectiveProxy },
  //     (val) => val ? ENABLE_SELECTIVE_PROXY : DISABLE_SELECTIVE_PROXY,
  //     null
  //   );
  // };

  var addListEntry = /*#__PURE__*/function () {
    var _ref13 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(entry, list, setList, setEntry, updateKey, active, action) {
      var trimmedEntry, urlRegex, urlMatch, domainOrIpRegex, updatedList, currentStatus, shouldSendStatus, _t6, _t7;
      return _regenerator().w(function (_context0) {
        while (1) switch (_context0.n) {
          case 0:
            if (entry.trim()) {
              _context0.n = 1;
              break;
            }
            return _context0.a(2);
          case 1:
            trimmedEntry = entry.trim();
            urlRegex = /^(https?:\/\/)?([\w.-]+)(\/.*)?$/;
            urlMatch = trimmedEntry.match(urlRegex);
            if (urlMatch) {
              trimmedEntry = urlMatch[2];
            }
            domainOrIpRegex = /^(?:\*\.?)?[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
            if (domainOrIpRegex.test(trimmedEntry)) {
              _context0.n = 2;
              break;
            }
            setAddListEntryErrorMessage(t("Please enter a valid domain (e.g., 'google.com or *.google.com') or IP (e.g., 192.168.1.1)"));
            return _context0.a(2);
          case 2:
            if (!list.includes(trimmedEntry)) {
              _context0.n = 3;
              break;
            }
            setAddListEntryErrorMessage(t('This domain, IP, or mask is already in the list'));
            return _context0.a(2);
          case 3:
            updatedList = [].concat(_toConsumableArray(list), [trimmedEntry]);
            setList(updatedList);
            setEntry('');
            setAddListEntryErrorMessage('');
            _context0.n = 4;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getProxyStatus();
          case 4:
            _t6 = _context0.v;
            if (_t6) {
              _context0.n = 5;
              break;
            }
            _t6 = _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.PROXY_STATUSES.DISCONNECT;
          case 5:
            currentStatus = _t6;
            _t7 = currentStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.PROXY_STATUSES.CONNECT;
            if (_t7) {
              _context0.n = 7;
              break;
            }
            _context0.n = 6;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getSettingsKillSwitch();
          case 6:
            _t7 = _context0.v;
          case 7:
            shouldSendStatus = _t7;
            _context0.n = 8;
            return updateSettings(_defineProperty({}, updateKey, updatedList), active ? action : null, updateKey === 'splitTunnelingList' ? updatedList : null, shouldSendStatus);
          case 8:
            _context0.n = 9;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.add_split_tunneling', updatedList);
          case 9:
            if (shouldSendStatus) {
              reloadTabs(trimmedEntry);
            }
          case 10:
            return _context0.a(2);
        }
      }, _callee0);
    }));
    return function addListEntry(_x4, _x5, _x6, _x7, _x8, _x9, _x0) {
      return _ref13.apply(this, arguments);
    };
  }();
  var removeListEntry = /*#__PURE__*/function () {
    var _ref14 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(index, list, setList, updateKey, active, action) {
      var domain, updatedList, currentStatus, shouldSendStatus, _t8, _t9;
      return _regenerator().w(function (_context1) {
        while (1) switch (_context1.n) {
          case 0:
            domain = list[index];
            updatedList = list.filter(function (_, i) {
              return i !== index;
            });
            setList(updatedList);
            _context1.n = 1;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getProxyStatus();
          case 1:
            _t8 = _context1.v;
            if (_t8) {
              _context1.n = 2;
              break;
            }
            _t8 = _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.PROXY_STATUSES.DISCONNECT;
          case 2:
            currentStatus = _t8;
            _t9 = currentStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.PROXY_STATUSES.CONNECT;
            if (_t9) {
              _context1.n = 4;
              break;
            }
            _context1.n = 3;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getSettingsKillSwitch();
          case 3:
            _t9 = _context1.v;
          case 4:
            shouldSendStatus = _t9;
            _context1.n = 5;
            return updateSettings(_defineProperty({}, updateKey, updatedList), active ? action : null, updateKey === 'splitTunnelingList' ? updatedList : null, shouldSendStatus);
          case 5:
            if (domain && shouldSendStatus) {
              reloadTabs(domain);
            }
            _context1.n = 6;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.remove_split_tunneling', updatedList);
          case 6:
            return _context1.a(2);
        }
      }, _callee1);
    }));
    return function removeListEntry(_x1, _x10, _x11, _x12, _x13, _x14) {
      return _ref14.apply(this, arguments);
    };
  }();
  var editListEntry = /*#__PURE__*/function () {
    var _ref15 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(list, updateKey, active, action, newValue, oldValue, setList) {
      var trimmedEntry, urlRegex, urlMatch, domainOrIpRegex, indexDomain, updatedList, currentStatus, shouldSendStatus, _t0, _t1;
      return _regenerator().w(function (_context10) {
        while (1) switch (_context10.n) {
          case 0:
            if (newValue.trim()) {
              _context10.n = 1;
              break;
            }
            return _context10.a(2);
          case 1:
            trimmedEntry = newValue.trim();
            urlRegex = /^(https?:\/\/)?([\w.-]+)(\/.*)?$/;
            urlMatch = trimmedEntry.match(urlRegex);
            if (urlMatch) {
              trimmedEntry = urlMatch[2];
            }
            domainOrIpRegex = /^(?:\*\.?)?[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
            if (domainOrIpRegex.test(trimmedEntry)) {
              _context10.n = 2;
              break;
            }
            alert(t("Please enter a valid domain (e.g., 'google.com or *.google.com') or IP (e.g., 192.168.1.1)"));
            return _context10.a(2);
          case 2:
            if (!(list.includes(trimmedEntry) && trimmedEntry !== oldValue)) {
              _context10.n = 3;
              break;
            }
            alert(t('This domain, IP, or mask is already in the list'));
            return _context10.a(2);
          case 3:
            indexDomain = list.indexOf(oldValue);
            updatedList = _toConsumableArray(list);
            updatedList[indexDomain] = trimmedEntry;
            _context10.n = 4;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getProxyStatus();
          case 4:
            _t0 = _context10.v;
            if (_t0) {
              _context10.n = 5;
              break;
            }
            _t0 = _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.PROXY_STATUSES.DISCONNECT;
          case 5:
            currentStatus = _t0;
            _t1 = currentStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.PROXY_STATUSES.CONNECT;
            if (_t1) {
              _context10.n = 7;
              break;
            }
            _context10.n = 6;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().getSettingsKillSwitch();
          case 6:
            _t1 = _context10.v;
          case 7:
            shouldSendStatus = _t1;
            _context10.n = 8;
            return updateSettings(_defineProperty({}, updateKey, updatedList), active ? action : null, updateKey === 'splitTunnelingList' ? updatedList : null, shouldSendStatus);
          case 8:
            setList(updatedList);
            if (shouldSendStatus) {
              reloadTabs(trimmedEntry);
            }
            _context10.n = 9;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.edit_split_tunneling', {
              newValue: trimmedEntry,
              oldValue: oldValue
            });
          case 9:
            return _context10.a(2);
        }
      }, _callee10);
    }));
    return function editListEntry(_x15, _x16, _x17, _x18, _x19, _x20, _x21) {
      return _ref15.apply(this, arguments);
    };
  }();
  var handleAddSplitEntry = function handleAddSplitEntry() {
    return addListEntry(newSplitEntry, splitTunnelingList, setSplitTunnelingList, setNewSplitEntry, 'splitTunnelingList', splitTunneling, _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__.UPDATE_SPLIT_TUNNELING_LIST);
  };
  var handleRemoveSplitEntry = function handleRemoveSplitEntry(index) {
    return removeListEntry(index, splitTunnelingList, setSplitTunnelingList, 'splitTunnelingList', splitTunneling, _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__.UPDATE_SPLIT_TUNNELING_LIST);
  };

  // const handleAddSelectiveEntry = () =>
  //   addListEntry(newSelectiveEntry, selectiveProxyList, setSelectiveProxyList, setNewSelectiveEntry, 'selectiveProxyList', selectiveProxy, UPDATE_SELECTIVE_PROXY_LIST);

  // const handleRemoveSelectiveEntry = (index) =>
  //   removeListEntry(index, selectiveProxyList, setSelectiveProxyList, 'selectiveProxyList', selectiveProxy, UPDATE_SELECTIVE_PROXY_LIST);

  var handleEditSelectiveEntry = function handleEditSelectiveEntry(newValue, oldValue) {
    return editListEntry(splitTunnelingList, 'splitTunnelingList', splitTunneling, _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_6__.UPDATE_SPLIT_TUNNELING_LIST, newValue, oldValue, setSplitTunnelingList);
  };
  var toggleDropdownOpen = function toggleDropdownOpen(processConnect, dropdownOpen, isSubscribe) {
    if (processConnect || !isSubscribe || !checkCountries) {
      return;
    }
    setDropdownOpen(!dropdownOpen);
    setApiGatewayDropdownOpen(false);
    setSearchQuery('');
  };
  var handleChangeApiGateway = /*#__PURE__*/function () {
    var _ref16 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11() {
      return _regenerator().w(function (_context11) {
        while (1) switch (_context11.n) {
          case 0:
            if (!(processConnect || !isSubscribe)) {
              _context11.n = 1;
              break;
            }
            return _context11.a(2);
          case 1:
            setChangeApiGateway(!changeApiGateway);
            _context11.n = 2;
            return updateSettings({
              changeApiGateway: !changeApiGateway
            });
          case 2:
            if (changeApiGateway) {
              _context11.n = 4;
              break;
            }
            _context11.n = 3;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().saveApiGatewayMain(selectedApiGateway);
          case 3:
            _context11.n = 5;
            break;
          case 4:
            _context11.n = 5;
            return (0,_common_functions_apiGatewaysForCity__WEBPACK_IMPORTED_MODULE_16__.checkApiGatewayMain)();
          case 5:
            _context11.n = 6;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_13__["default"].addEvents('extension.api_gateway', '', changeApiGateway ? 'enabled' : 'disabled');
          case 6:
            return _context11.a(2);
        }
      }, _callee11);
    }));
    return function handleChangeApiGateway() {
      return _ref16.apply(this, arguments);
    };
  }();
  var toggleApiGatewaysDropdownOpen = function toggleApiGatewaysDropdownOpen(processConnect, apiGatewayDropdownOpen, isSubscribe) {
    if (processConnect || !isSubscribe) {
      return;
    }
    setApiGatewayDropdownOpen(!apiGatewayDropdownOpen);
    setDropdownOpen(false);
    setSearchQuery('');
  };
  var handleApyGatewaySelect = /*#__PURE__*/function () {
    var _ref17 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(apyGateway) {
      return _regenerator().w(function (_context12) {
        while (1) switch (_context12.n) {
          case 0:
            _context12.n = 1;
            return updateSettings({
              selectedApiGateway: apyGateway
            });
          case 1:
            setSelectedApiGateway(apyGateway);
            setApiGatewayDropdownOpen(false);
            setSearchQuery('');
            if (!changeApiGateway) {
              _context12.n = 2;
              break;
            }
            _context12.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_7___default().saveApiGatewayMain(apyGateway);
          case 2:
            return _context12.a(2);
        }
      }, _callee12);
    }));
    return function handleApyGatewaySelect(_x22) {
      return _ref17.apply(this, arguments);
    };
  }();
  var getApiGatewayCity = function getApiGatewayCity(apiGateway) {
    return _sw_constants_server_proxy_constants__WEBPACK_IMPORTED_MODULE_14__.PROXY_SERVERS_CITIES[apiGateway] || apiGateway;
  };
  var checkCountries = apiCountries && apiCountries.length;
  var disableToggle = processConnect || !isSubscribe || processDisconnect;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].container
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].header,
    onClick: onNavigate
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].backButton
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_1__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].headerTitle
  }, t('setting_network_and_privacy'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, t('setting_network_and_privacy_section_1_title'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionText
  }, t('setting_network_and_privacy_section_1_text'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleAutoConnectChange,
    className: "".concat(autoConnect ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActive : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggle, " ")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: autoConnect ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActiveThumb : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleThumb
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].dropdown, "  ").concat(disableToggle || !checkCountries ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleDisable : ""),
    ref: dropdownRef
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownToggle, " ").concat(dropdownOpen ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownToggleActive : ''),
    onClick: function onClick() {
      return toggleDropdownOpen(processConnect, dropdownOpen, isSubscribe);
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnSelectedCountryContainer
  }, selectedCountryFlag && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
    src: selectedCountryFlag,
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnFlagCircle
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnSelectedCountry
  }, selectedAutoConnectCountry || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionDefaultDropdown
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_FastestServerSVG__WEBPACK_IMPORTED_MODULE_4__.FastestServerSVG, {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionIcon
  }), t('setting_network_and_privacy_dropdown_title')))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnArrow
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ArrowSVG__WEBPACK_IMPORTED_MODULE_2__["default"], null))), dropdownOpen && !processConnect && isSubscribe && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdown
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].searchContainer
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    type: "text",
    placeholder: t("search_for_countries"),
    value: searchQuery,
    onChange: handleSearchChange,
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].search
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_SearchSVG__WEBPACK_IMPORTED_MODULE_3__["default"], {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].searchIcon
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownItems
  }, dropdownCountries.map(function (country, index) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: country.name,
      className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownItem, " ").concat(index === 0 ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnItemFastest : ''),
      onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13() {
        return _regenerator().w(function (_context13) {
          while (1) switch (_context13.n) {
            case 0:
              _context13.n = 1;
              return handleCountrySelect(country.name);
            case 1:
              return _context13.a(2, _context13.v);
          }
        }, _callee13);
      }))
    }, !index && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_FastestServerSVG__WEBPACK_IMPORTED_MODULE_4__.FastestServerSVG, {
      className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownItemIcon
    }), country.flag && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("img", {
      src: country.flag,
      alt: country.title,
      className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnFlagCircle
    }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownInfo
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownTitle
    }, country.title), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownText
    }, country.city)));
  }))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, t('setting_choosing_api_gateway'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionText
  }, t('setting_choosing_api_gateway_description'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleChangeApiGateway,
    className: "".concat(changeApiGateway ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActive : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggle, " ").concat(disableToggle ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleDisable : "")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: changeApiGateway ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActiveThumb : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleThumb
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].dropdown, "  ").concat(disableToggle ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleDisable : ""),
    ref: dropdownApiGatewayRef
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownToggle, " ").concat(apiGatewayDropdownOpen ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownToggleActive : ''),
    onClick: function onClick() {
      return toggleApiGatewaysDropdownOpen(processConnect, apiGatewayDropdownOpen, isSubscribe);
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnSelectedCountryContainer
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnSelectedCountry
  }, getApiGatewayCity(selectedApiGateway) || /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionDefaultDropdown
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnArrow
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ArrowSVG__WEBPACK_IMPORTED_MODULE_2__["default"], null))), apiGatewayDropdownOpen && !processConnect && isSubscribe && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdown
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].searchContainer
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    type: "text",
    placeholder: t("search_proxy_server"),
    value: searchQuery,
    onChange: handleSearchChange,
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].search
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_SearchSVG__WEBPACK_IMPORTED_MODULE_3__["default"], {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].searchIcon
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownItems
  }, dropdownApiGateways.map(function (apiGateway, index) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: index,
      className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownItem, " ").concat(index === 0 ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnItemFastest : ''),
      onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee14() {
        return _regenerator().w(function (_context14) {
          while (1) switch (_context14.n) {
            case 0:
              _context14.n = 1;
              return handleApyGatewaySelect(apiGateway.gateway);
            case 1:
              return _context14.a(2);
          }
        }, _callee14);
      }))
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownInfo
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].vpnDropdownTitle
    }, apiGateway.city)));
  }))))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionBorder)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, t('setting_security_threat_protection'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionText
  }, t('setting_security_threat_protection_description'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleThreatProtection,
    className: "".concat(threatProtection ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActive : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggle, " ").concat(disableToggle ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleDisable : "")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: threatProtection ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActiveThumb : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleThumb
  })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionBorder)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, t('setting_network_and_privacy_section_2_title'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionText
  }, t('setting_network_and_privacy_section_2_text'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleKillSwitchChange,
    className: "".concat(killSwitch ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActive : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggle, " ").concat(disableToggle ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleDisable : "")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: killSwitch ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActiveThumb : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleThumb
  })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionBorder)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, t('setting_security_location_spoofing'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionText
  }, t('setting_security_location_spoofing_description'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleLocationSpoofingChange,
    className: "".concat(locationSpoofing ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActive : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggle, " ").concat(disableToggle ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleDisable : "")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: locationSpoofing ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActiveThumb : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleThumb
  })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionBorder)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, t('setting_security_auto_reload_tabs'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionText
  }, t('setting_security_auto_reload_tabs_description'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: handleAutoReloadTabsChange,
    className: "".concat(autoReloadTabs ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActive : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggle, " ").concat(disableToggle ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleDisable : "")
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: autoReloadTabs ? _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleActiveThumb : _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].itemToggleThumb
  })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionBorder)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, t('setting_network_and_privacy_section_3_title'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_12__["default"].sectionText
  }, t('setting_network_and_privacy_section_3_text')))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_SplitTunnelingList_SplitTunnelingList__WEBPACK_IMPORTED_MODULE_11__["default"], {
    active: splitTunneling,
    list: splitTunnelingList,
    onAdd: handleAddSplitEntry,
    onRemove: handleRemoveSplitEntry,
    onEdit: handleEditSelectiveEntry,
    entry: newSplitEntry,
    setEntry: function setEntry(value) {
      setAddListEntryErrorMessage('');
      setNewSplitEntry(value);
    },
    placeholder: t('setting_connection_input_placeholder'),
    t: t,
    setList: setSplitTunnelingList,
    errorMessage: addListEntryErrorMessage
  })));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (NetworkAndPrivacy);

/***/ }),

/***/ "./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.module.css":
/*!*****************************************************************************!*\
  !*** ./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.module.css ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./NetworkAndPrivacy.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_NetworkAndPrivacy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.jsx":
/*!******************************************************************************************!*\
  !*** ./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.jsx ***!
  \******************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SplitTunnelingList.module.css */ "./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.module.css");
/* harmony import */ var _svg_RemoveSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/RemoveSVG */ "./src/components/shared/svg/RemoveSVG.jsx");
/* harmony import */ var _svg_EditSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/EditSVG */ "./src/components/shared/svg/EditSVG.jsx");
/* harmony import */ var _src_components_shared_components_Alert_Alert__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @src/components/shared/components/Alert/Alert */ "./src/components/shared/components/Alert/Alert.jsx");
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }





var SplitTunnelingList = function SplitTunnelingList(_ref) {
  var active = _ref.active,
    list = _ref.list,
    onAdd = _ref.onAdd,
    onRemove = _ref.onRemove,
    entry = _ref.entry,
    setEntry = _ref.setEntry,
    placeholder = _ref.placeholder,
    t = _ref.t,
    onEdit = _ref.onEdit,
    errorMessage = _ref.errorMessage;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].splitTunnelingSection
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    type: "text",
    value: entry,
    onChange: function onChange(e) {
      return setEntry(e.target.value.toLowerCase().replace(/\s+/g, ''));
    },
    placeholder: placeholder,
    className: "".concat(_SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].splitTunnelingInput, " ").concat(errorMessage ? _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].inputError : ''),
    disabled: !active
  }), !!errorMessage && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Alert_Alert__WEBPACK_IMPORTED_MODULE_4__["default"], {
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].errorMessage
  }, errorMessage), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: onAdd,
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].addButton,
    disabled: !active || !entry.trim()
  }, t('setting_add_button'))), list && list.length ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].splitTunnelingList
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].splitTunnelingListTitle
  }, t('Bypassed by the VPN tunnel:')), list.map(function (item, index) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(SplitTunnelingListItem, {
      key: item,
      item: item,
      index: index,
      onRemove: onRemove,
      onChangeText: onEdit
    });
  })) : '');
};
var SplitTunnelingListItem = function SplitTunnelingListItem(_ref2) {
  var item = _ref2.item,
    index = _ref2.index,
    onRemove = _ref2.onRemove,
    onChangeText = _ref2.onChangeText;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(item),
    _useState2 = _slicedToArray(_useState, 2),
    value = _useState2[0],
    setValue = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true),
    _useState4 = _slicedToArray(_useState3, 2),
    disabled = _useState4[0],
    setDisabled = _useState4[1];
  var inputRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  var onEdit = function onEdit(e) {
    e.preventDefault();
    setDisabled(false);
    setTimeout(function () {
      return inputRef.current.focus();
    }, 0);
  };
  var onBlur = function onBlur(e) {
    onChangeText(e.target.value, item);
    setDisabled(true);
  };
  var onChange = function onChange(e) {
    setValue(e.target.value.toLowerCase().replace(/\s+/g, ''));
  };
  var onKeyDown = function onKeyDown(e) {
    if (e.key === 'Enter') {
      e.preventDefault();
      inputRef.current.blur();
    }
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].splitTunnelingItem
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    ref: inputRef,
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].splitTunnelingItemInput,
    value: value,
    disabled: disabled,
    onKeyDown: onKeyDown,
    onChange: onChange,
    onBlur: onBlur
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: onEdit,
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].editButton
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_EditSVG__WEBPACK_IMPORTED_MODULE_3__.EditSVG, null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: function onClick() {
      return onRemove(index);
    },
    className: _SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].removeButton
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_RemoveSVG__WEBPACK_IMPORTED_MODULE_2__.RemoveSVG, null)));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SplitTunnelingList);

/***/ }),

/***/ "./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.module.css":
/*!*************************************************************************************************!*\
  !*** ./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.module.css ***!
  \*************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./SplitTunnelingList.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/NetworkAndPrivacy/SplitTunnelingList/SplitTunnelingList.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SplitTunnelingList_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/Profile/Profile.jsx":
/*!**************************************************!*\
  !*** ./src/components/pages/Profile/Profile.jsx ***!
  \**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ Profile)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @src/components/shared/components/Button */ "./src/components/shared/components/Button.jsx");
/* harmony import */ var _src_tools_tools__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @src/tools/tools */ "./src/tools/tools.js");
/* harmony import */ var _svg_ContactInformationSVG__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @svg/ContactInformationSVG */ "./src/components/shared/svg/ContactInformationSVG.jsx");
/* harmony import */ var _svg_PlansActiveUntilSVG__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @svg/PlansActiveUntilSVG */ "./src/components/shared/svg/PlansActiveUntilSVG.jsx");
/* harmony import */ var _svg_ContactUsSVG__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @svg/ContactUsSVG */ "./src/components/shared/svg/ContactUsSVG.jsx");
/* harmony import */ var _svg_NeedHelpSVG__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @svg/NeedHelpSVG */ "./src/components/shared/svg/NeedHelpSVG.jsx");
/* harmony import */ var _svg_RightArrowSVG__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @svg/RightArrowSVG */ "./src/components/shared/svg/RightArrowSVG.jsx");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_9__);
/* harmony import */ var _src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @src/hooks/useBorderManager */ "./src/hooks/useBorderManager.js");
/* harmony import */ var _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./Profile.module.css */ "./src/components/pages/Profile/Profile.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _services_SendMessageService__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @services/SendMessageService */ "./src/common/services/SendMessageService.js");
/* harmony import */ var _common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @common/functions/checkSubscriptions */ "./src/common/functions/checkSubscriptions.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
















function Profile(_ref) {
  var _userData$subscriptio, _userData$subscriptio2, _userData$subscriptio3;
  var userData = _ref.userData,
    token = _ref.token,
    setGeneralError = _ref.setGeneralError,
    clearAllErrors = _ref.clearAllErrors,
    setView = _ref.setView,
    processConnect = _ref.processConnect;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var subscriptionTrialStatus = (userData === null || userData === void 0 || (_userData$subscriptio = userData.subscription_info) === null || _userData$subscriptio === void 0 ? void 0 : _userData$subscriptio.status) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_15__.SUBSCRIPTION_STATUSES.TRIAL;
  var trialPeriodUntil = userData === null || userData === void 0 || (_userData$subscriptio2 = userData.subscription_info) === null || _userData$subscriptio2 === void 0 ? void 0 : _userData$subscriptio2.trial_period_until;
  var isTrial = subscriptionTrialStatus && trialPeriodUntil < new Date();
  var subscribedExpDate = userData === null || userData === void 0 || (_userData$subscriptio3 = userData.subscription_info) === null || _userData$subscriptio3 === void 0 ? void 0 : _userData$subscriptio3.subscription_exp_date;
  var subscribedStatus = (0,_common_functions_checkSubscriptions__WEBPACK_IMPORTED_MODULE_14__.getSubscriptionStatus)(subscribedExpDate, false, isTrial);
  var _useBorderManager = (0,_src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_10__.useBorderManager)(),
    handleMouseEnter = _useBorderManager.handleMouseEnter,
    handleMouseLeave = _useBorderManager.handleMouseLeave,
    shouldRemoveBorder = _useBorderManager.shouldRemoveBorder;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    blockGetLink = _useState2[0],
    setBlockGetLink = _useState2[1];
  var menu = [{
    id: 'contact_us',
    title: t('contact_us'),
    Icon: _svg_ContactUsSVG__WEBPACK_IMPORTED_MODULE_6__["default"],
    route: "profile/contact_us"
  }, {
    id: 'need_help',
    title: t('need_help'),
    Icon: _svg_NeedHelpSVG__WEBPACK_IMPORTED_MODULE_7__["default"],
    link: "https://www.apexguard.com/help-center/"
  }];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_12__["default"].addEvents('extension.show_profile');
  }, []);
  var _parseJwt = (0,_src_tools_tools__WEBPACK_IMPORTED_MODULE_3__.parseJwt)(token),
    payload = _parseJwt.payload;
  var email = payload !== null && payload !== void 0 && payload.sub ? JSON.parse(payload.sub).email : null;
  function formatDate(inputString) {
    if (!inputString) return null;
    var monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
    var inputParts = inputString.split(" ")[0].split("-");
    var monthIndex = parseInt(inputParts[1], 10) - 1;
    var year = inputParts[0];
    var month = monthNames[monthIndex];
    var day = parseInt(inputParts[2], 10);
    return "".concat(day, " ").concat(month, " ").concat(year);
  }
  var handleLogout = /*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
      var _t;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.p = _context.n) {
          case 0:
            if (!processConnect) {
              _context.n = 1;
              break;
            }
            return _context.a(2);
          case 1:
            _context.p = 1;
            _context.n = 2;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_12__["default"].addEvents('extension.click_logout');
          case 2:
            _context.n = 3;
            return _services_SendMessageService__WEBPACK_IMPORTED_MODULE_13__["default"].handleLogout(function (err) {
              setGeneralError(err.message);
            });
          case 3:
            clearAllErrors();
            _context.n = 6;
            break;
          case 4:
            _context.p = 4;
            _t = _context.v;
            _context.n = 5;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_12__["default"].addEvents('extension.error_logout', _t);
          case 5:
            setGeneralError(_t.message);
          case 6:
            return _context.a(2);
        }
      }, _callee, null, [[1, 4]]);
    }));
    return function handleLogout() {
      return _ref2.apply(this, arguments);
    };
  }();
  var handleButtonClick = /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(action) {
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.n) {
          case 0:
            if (!blockGetLink) {
              _context2.n = 1;
              break;
            }
            return _context2.a(2);
          case 1:
            setBlockGetLink(true);
            _context2.n = 2;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_12__["default"].addEvents("action.send.".concat(action), {
              method_send: action
            });
          case 2:
            _context2.n = 3;
            return _services_SendMessageService__WEBPACK_IMPORTED_MODULE_13__["default"].sendMessage(action)["catch"](function (err) {
              return setGeneralError(err.message);
            });
          case 3:
            setBlockGetLink(false);
          case 4:
            return _context2.a(2);
        }
      }, _callee2);
    }));
    return function handleButtonClick(_x) {
      return _ref3.apply(this, arguments);
    };
  }();
  var getTrialEndTime = function getTrialEndTime() {
    var date = new Date(trialPeriodUntil * 1000);
    return date.toISOString();
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("h2", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].title
  }, "Profile"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoWrapper
  }, !!email && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoItem
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoItemLabel
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ContactInformationSVG__WEBPACK_IMPORTED_MODULE_4__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('contact_information'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoItemValue
  }, email)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoItem
  }, subscribedExpDate || isTrial ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoItemLabel
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_PlansActiveUntilSVG__WEBPACK_IMPORTED_MODULE_5__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('your_plans_active_until'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoItemValue
  }, subscribedExpDate ? formatDate(subscribedExpDate) : formatDate(getTrialEndTime()))) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].profileInfoItemLabel
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_PlansActiveUntilSVG__WEBPACK_IMPORTED_MODULE_5__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('not_active_subscription')))), subscribedStatus && subscribedExpDate ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_2__["default"], {
    onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
      return _regenerator().w(function (_context3) {
        while (1) switch (_context3.n) {
          case 0:
            _context3.n = 1;
            return handleButtonClick(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_9__.OPEN_PRICING);
          case 1:
            return _context3.a(2);
        }
      }, _callee3);
    }))
  }, t('renew_now')) : '', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_2__["default"], {
    onClick: /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
      return _regenerator().w(function (_context4) {
        while (1) switch (_context4.n) {
          case 0:
            _context4.n = 1;
            return handleButtonClick(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_9__.OPEN_DASHBOARD);
          case 1:
            return _context4.a(2);
        }
      }, _callee4);
    }))
  }, t('view_full_info'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].list
  }, menu.map(function (_ref6, index) {
    var id = _ref6.id,
      title = _ref6.title,
      Icon = _ref6.Icon,
      route = _ref6.route,
      link = _ref6.link;
    var isHelp = id === 'need_help';
    var Compnent = isHelp ? "a" : "div";
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Compnent, _extends({
      key: id,
      className: "".concat(_Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].listItemWrapper, " ").concat(shouldRemoveBorder(index) ? _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].noBorder : ""),
      onClick: function onClick() {
        return !isHelp && setView(route);
      },
      href: isHelp ? link : undefined
    }, isHelp ? {
      target: '_blank',
      rel: 'noopener noreferrer'
    } : {}, {
      onMouseEnter: function onMouseEnter() {
        return handleMouseEnter(index);
      },
      onMouseLeave: handleMouseLeave
    }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].listItem
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Icon, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].listItemContent
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
      className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].listItemContentTitle
    }, title), isHelp && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
      className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].goToHelpCenter
    }, t('go_to_help_center')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_RightArrowSVG__WEBPACK_IMPORTED_MODULE_8__["default"], {
      className: _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].arrowIcon
    }))));
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Button__WEBPACK_IMPORTED_MODULE_2__["default"], {
    className: "".concat(_Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].logOutBtn, "  ").concat(processConnect ? _Profile_module_css__WEBPACK_IMPORTED_MODULE_11__["default"].itemDisable : ""),
    onClick: handleLogout
  }, t('log_out')));
}

/***/ }),

/***/ "./src/components/pages/Profile/Profile.module.css":
/*!*********************************************************!*\
  !*** ./src/components/pages/Profile/Profile.module.css ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Profile_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./Profile.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/Profile/Profile.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Profile_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Profile_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Profile_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Profile_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/ReferralHub/ReferralHub.jsx":
/*!**********************************************************!*\
  !*** ./src/components/pages/ReferralHub/ReferralHub.jsx ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @svg/BackArrowSVG */ "./src/components/shared/svg/BackArrowSVG.jsx");
/* harmony import */ var _svg_InviteAFriendSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/InviteAFriendSVG */ "./src/components/shared/svg/InviteAFriendSVG.jsx");
/* harmony import */ var _svg_EnjoyRewardsSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/EnjoyRewardsSVG */ "./src/components/shared/svg/EnjoyRewardsSVG.jsx");
/* harmony import */ var _svg_WaitSVG__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @svg/WaitSVG */ "./src/components/shared/svg/WaitSVG.jsx");
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @common/services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_common_services_StorageService__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./ReferralHub.module.css */ "./src/components/pages/ReferralHub/ReferralHub.module.css");
/* harmony import */ var _src_components_shared_svg_LinkSVG__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @src/components/shared/svg/LinkSVG */ "./src/components/shared/svg/LinkSVG.jsx");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _svg_CheckSVG__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @svg/CheckSVG */ "./src/components/shared/svg/CheckSVG.jsx");
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }












var ReferralHub = function ReferralHub(_ref) {
  var onNavigate = _ref.onNavigate;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    isCopied = _useState2[0],
    setIsCopied = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState4 = _slicedToArray(_useState3, 2),
    referralLink = _useState4[0],
    setReferralLink = _useState4[1];
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_7__["default"]),
    t = _useContext.t;
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var loadReferralLink = /*#__PURE__*/function () {
      var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
        var _yield$StorageService, userData, _t;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              _context.p = 0;
              _context.n = 1;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_6___default().getAuthData();
            case 1:
              _yield$StorageService = _context.v;
              userData = _yield$StorageService.userData;
              setReferralLink((userData === null || userData === void 0 ? void 0 : userData.referral_link) || '');
              _context.n = 2;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_10__["default"].addEvents('extension.load_referral_hub');
            case 2:
              _context.n = 4;
              break;
            case 3:
              _context.p = 3;
              _t = _context.v;
              (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_5__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_5__.LOG_LEVELS.ERROR, 'Failed to load referral link:', _t);
              _context.n = 4;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_10__["default"].addEvents('extension.error_load_referral_hub', _t);
            case 4:
              return _context.a(2);
          }
        }, _callee, null, [[0, 3]]);
      }));
      return function loadReferralLink() {
        return _ref2.apply(this, arguments);
      };
    }();
    _services_LogsService__WEBPACK_IMPORTED_MODULE_10__["default"].addEvents('extension.show_load_referral_hub');
    loadReferralLink();
  }, []);
  var handleCopyClick = /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
      var _t2;
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.p = _context2.n) {
          case 0:
            if (!isCopied) {
              _context2.n = 1;
              break;
            }
            return _context2.a(2);
          case 1:
            _context2.p = 1;
            _context2.n = 2;
            return navigator.clipboard.writeText(referralLink);
          case 2:
            setIsCopied(true);
            setTimeout(function () {
              return setIsCopied(false);
            }, 2000);
            _context2.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_10__["default"].addEvents('extension.copy_referral_hub');
          case 3:
            _context2.n = 5;
            break;
          case 4:
            _context2.p = 4;
            _t2 = _context2.v;
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_5__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_5__.LOG_LEVELS.ERROR, 'Failed to copy referral link:', _t2);
            _context2.n = 5;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_10__["default"].addEvents('extension.error_copy_referral_hub', _t2);
          case 5:
            return _context2.a(2);
        }
      }, _callee2, null, [[1, 4]]);
    }));
    return function handleCopyClick() {
      return _ref3.apply(this, arguments);
    };
  }();
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].container
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].header,
    onClick: onNavigate
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].backButton
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_1__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].headerTitle
  }, t('setting_referral_hub'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].section
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionTitle
  }, t('setting_referral_hub_section_1_title')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionCode
  }, referralLink), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: handleCopyClick,
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionButton
  }, isCopied && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_CheckSVG__WEBPACK_IMPORTED_MODULE_11__["default"], null), t(isCopied ? 'copied' : 'setting_referral_hub_section_1_button')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionText, " ").concat(_ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].small)
  }, t('setting_referral_hub_section_1_text'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].section
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_InviteAFriendSVG__WEBPACK_IMPORTED_MODULE_2__.InviteAFriendSVG, null), t('setting_referral_hub_section_2_title')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionText
  }, t('setting_referral_hub_section_2_text'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].section
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_WaitSVG__WEBPACK_IMPORTED_MODULE_4__.WaitSVG, null), t('setting_referral_hub_section_3_title')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionText
  }, t('setting_referral_hub_section_3_text'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].section
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionTitle
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_EnjoyRewardsSVG__WEBPACK_IMPORTED_MODULE_3__.EnjoyRewardsSVG, null), t('setting_referral_hub_section_4_title')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionText
  }, t('setting_referral_hub_section_4_text'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: function onClick() {
      return window.open('https://my.apexguard.com/account/referral');
    },
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].sectionButton
  }, t('settings_refer_see_invited_friends')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].learnMore,
    onClick: function onClick() {
      return window.open('https://www.apexguard.com/refer');
    }
  }, t('settings_refer_learn_more'), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].learnMoreIcon
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_svg_LinkSVG__WEBPACK_IMPORTED_MODULE_9__.LinkSVG, null))));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ReferralHub);

/***/ }),

/***/ "./src/components/pages/ReferralHub/ReferralHub.module.css":
/*!*****************************************************************!*\
  !*** ./src/components/pages/ReferralHub/ReferralHub.module.css ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./ReferralHub.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ReferralHub/ReferralHub.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_ReferralHub_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/ReportViewScreen/ReportViewScreen.jsx":
/*!********************************************************************!*\
  !*** ./src/components/pages/ReportViewScreen/ReportViewScreen.jsx ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ ReportViewScreen)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/BackArrowSVG */ "./src/components/shared/svg/BackArrowSVG.jsx");
/* harmony import */ var _svg_ArrowSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/ArrowSVG */ "./src/components/shared/svg/ArrowSVG.jsx");
/* harmony import */ var _src_components_shared_components_Input_Input__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @src/components/shared/components/Input/Input */ "./src/components/shared/components/Input/Input.jsx");
/* harmony import */ var _src_components_shared_components_Checkbox_Checkbox__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @src/components/shared/components/Checkbox/Checkbox */ "./src/components/shared/components/Checkbox/Checkbox.jsx");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
/* harmony import */ var _services_ApiClient__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_services_ApiClient__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _src_tools_tools__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @src/tools/tools */ "./src/tools/tools.js");
/* harmony import */ var _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./report_view_screen.module.css */ "./src/components/pages/ReportViewScreen/report_view_screen.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _svg_ReportProblemFeedbackSVG__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @svg/ReportProblemFeedbackSVG */ "./src/components/shared/svg/ReportProblemFeedbackSVG.jsx");
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }











function ReportViewScreen(_ref) {
  var token = _ref.token,
    setView = _ref.setView,
    setConnectError = _ref.setConnectError;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var _parseJwt = (0,_src_tools_tools__WEBPACK_IMPORTED_MODULE_7__.parseJwt)(token),
    payload = _parseJwt.payload;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState2 = _slicedToArray(_useState, 2),
    isLoading = _useState2[0],
    setIsLoading = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({
      type: 'issue_type',
      message: '',
      errorMessage: '',
      country: '',
      internetProvider: '',
      app_logs: false,
      email: payload !== null && payload !== void 0 && payload.sub ? JSON.parse(payload.sub).email : null,
      logFile: {}
    }),
    _useState4 = _slicedToArray(_useState3, 2),
    form = _useState4[0],
    setForm = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState6 = _slicedToArray(_useState5, 2),
    isSuccess = _useState6[0],
    setIsSuccess = _useState6[1];
  var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({
      type: false,
      message: false
    }),
    _useState8 = _slicedToArray(_useState7, 2),
    errors = _useState8[0],
    setErrors = _useState8[1];
  var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState0 = _slicedToArray(_useState9, 2),
    showOptions = _useState0[0],
    setShowOptions = _useState0[1];
  var _useState1 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState10 = _slicedToArray(_useState1, 2),
    errorDetailEnabled = _useState10[0],
    setErrorDetailEnabled = _useState10[1];
  var typeRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  var messageRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(null);
  var issueTypes = ['cant_connect', 'unstable_vpn', 'slow_vpn', 'no_internet', 'streaming', 'cant_login', 'other_tech'];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.show_report_screen');
  }, []);
  var handleChange = function handleChange(e) {
    var _e$target = e.target,
      name = _e$target.name,
      value = _e$target.value;
    setForm(function (prev) {
      return _objectSpread(_objectSpread({}, prev), {}, _defineProperty({}, name, value));
    });
    if (errors[name]) {
      setErrors(function (prev) {
        return _objectSpread(_objectSpread({}, prev), {}, _defineProperty({}, name, false));
      });
    }
  };
  var handleSubmit = /*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(e) {
      var hasTypeError, hasMessageError, logs, response;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.n) {
          case 0:
            e.preventDefault();
            hasTypeError = form.type === 'issue_type';
            hasMessageError = !form.message.trim();
            if (!(hasTypeError || hasMessageError || form.message.length < 5)) {
              _context.n = 2;
              break;
            }
            setErrors({
              type: hasTypeError,
              message: hasMessageError || form.message.length < 5
            });
            if (hasTypeError && typeRef.current) {
              typeRef.current.scrollIntoView({
                behavior: 'smooth',
                block: 'center'
              });
            } else if ((hasMessageError || form.message.length < 5) && messageRef.current) {
              messageRef.current.focus();
            }
            _context.n = 1;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.error_send_report_a_problem', form);
          case 1:
            return _context.a(2);
          case 2:
            if (!(form !== null && form !== void 0 && form.app_logs)) {
              _context.n = 4;
              break;
            }
            _context.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].getLogs();
          case 3:
            logs = _context.v;
            if (!logs || !Object.keys(JSON.stringify(logs, null, 2)).length) {
              logs = {};
            }
            form.logFile = new Blob([JSON.stringify(logs, null, 2)], {
              type: 'application/json'
            });
          case 4:
            setIsLoading(true);
            _context.n = 5;
            return _services_ApiClient__WEBPACK_IMPORTED_MODULE_6___default().sendReport(form);
          case 5:
            response = _context.v;
            if (response.success) {
              setIsSuccess(true);
            } else {
              setConnectError(response.error || "Error ".concat(response.status));
            }
            _context.n = 6;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.send_report_a_problem', form);
          case 6:
            setIsLoading(false);
          case 7:
            return _context.a(2);
        }
      }, _callee);
    }));
    return function handleSubmit(_x) {
      return _ref2.apply(this, arguments);
    };
  }();
  var toggleAppLogs = function toggleAppLogs() {
    return setForm(function (prev) {
      return _objectSpread(_objectSpread({}, prev), {}, {
        app_logs: !prev.app_logs
      });
    });
  };
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    if (errors.type || errors.message) {
      var timer = setTimeout(function () {
        setErrors({
          type: false,
          message: false
        });
      }, 3000);
      return function () {
        return clearTimeout(timer);
      };
    }
  }, [errors]);
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].container
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].header,
    onClick: function onClick() {
      return setView('help');
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_BackArrowSVG__WEBPACK_IMPORTED_MODULE_2__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, t('report_a_problem'))), isSuccess ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].reportProblemFeedbackWrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ReportProblemFeedbackSVG__WEBPACK_IMPORTED_MODULE_10__["default"], null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].reportProblemFeedbackTitle
  }, t('report_problem_feedback_title')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].reportProblemFeedbackText
  }, t('report_problem_feedback_text')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: "".concat(_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].reportProblemFeedbackBtn, " ").concat(_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].btnSubmit),
    onClick: function onClick() {
      return setView('help');
    }
  }, t('back_to_settings'))) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("form", {
    onSubmit: handleSubmit,
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].formReport
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    ref: typeRef,
    className: "".concat(_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].selectType),
    onClick: function onClick() {
      setShowOptions(function (prev) {
        return !prev;
      });
      setErrors(function (prev) {
        return _objectSpread(_objectSpread({}, prev), {}, {
          type: false
        });
      });
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].select, " ").concat(showOptions ? _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].open : '', " ").concat(errors.type ? _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"]['has-error'] : ''),
    style: {
      color: form.type === 'issue_type' ? 'var(--text-value-select)' : 'var(--title-color)',
      borderColor: form.type === 'issue_type' ? 'var(--border-select)' : 'rgba(62, 159, 248, 1)'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", null, t(form.type)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_ArrowSVG__WEBPACK_IMPORTED_MODULE_3__["default"], null)), showOptions && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].options
  }, issueTypes.map(function (item) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: item,
      className: "".concat(_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].item, " ").concat(item === form.type ? _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].selectItem : ''),
      onClick: function onClick() {
        return setForm(function (prev) {
          return _objectSpread(_objectSpread({}, prev), {}, {
            type: item
          });
        });
      }
    }, t(item));
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Input_Input__WEBPACK_IMPORTED_MODULE_4__["default"], {
    innerRef: messageRef,
    value: form.message,
    name: "message",
    typeInput: "text",
    label: "report_a_problem",
    placeholder: " ",
    required: false,
    updValue: handleChange,
    error: errors.message
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].radioContainer
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('question_error_message')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    type: "radio",
    name: "error_detail",
    checked: errorDetailEnabled,
    onChange: function onChange() {
      return setErrorDetailEnabled(true);
    }
  }), t('yes')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    type: "radio",
    name: "error_detail",
    checked: !errorDetailEnabled,
    onChange: function onChange() {
      return setErrorDetailEnabled(false);
    }
  }), t('no'))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].inputsWrapper
  }, ['errorMessage', 'country', 'internetProvider'].map(function (field) {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: field
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Input_Input__WEBPACK_IMPORTED_MODULE_4__["default"], {
      name: field,
      value: form[field],
      typeInput: "text",
      label: field,
      placeholder: " ",
      disabled: !errorDetailEnabled,
      required: false,
      updValue: handleChange
    }));
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Checkbox_Checkbox__WEBPACK_IMPORTED_MODULE_5__["default"], {
    checked: form.app_logs,
    onChange: toggleAppLogs
  }, t('send_app_logs')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    type: "submit",
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].btnSubmit,
    disabled: isLoading
  }, isLoading ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_8__["default"].loader
  }) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, t('submit')))));
}

/***/ }),

/***/ "./src/components/pages/ReportViewScreen/report_view_screen.module.css":
/*!*****************************************************************************!*\
  !*** ./src/components/pages/ReportViewScreen/report_view_screen.module.css ***!
  \*****************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./report_view_screen.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/ReportViewScreen/report_view_screen.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_report_view_screen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/pages/SettingsScreen/SettingsScreen.jsx":
/*!****************************************************************!*\
  !*** ./src/components/pages/SettingsScreen/SettingsScreen.jsx ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _svg_RightArrowSVG__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @svg/RightArrowSVG */ "./src/components/shared/svg/RightArrowSVG.jsx");
/* harmony import */ var _context_LanguageContext_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @context/LanguageContext.js */ "./src/context/LanguageContext.js");
/* harmony import */ var _GeneralSettingsScreen_GeneralSettingsScreen_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../GeneralSettingsScreen/GeneralSettingsScreen.jsx */ "./src/components/pages/GeneralSettingsScreen/GeneralSettingsScreen.jsx");
/* harmony import */ var _ReferralHub_ReferralHub_jsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../ReferralHub/ReferralHub.jsx */ "./src/components/pages/ReferralHub/ReferralHub.jsx");
/* harmony import */ var _NetworkAndPrivacy_NetworkAndPrivacy_jsx__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../NetworkAndPrivacy/NetworkAndPrivacy.jsx */ "./src/components/pages/NetworkAndPrivacy/NetworkAndPrivacy.jsx");
/* harmony import */ var _src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @src/hooks/useBorderManager */ "./src/hooks/useBorderManager.js");
/* harmony import */ var _SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./SettingsScreen.module.css */ "./src/components/pages/SettingsScreen/SettingsScreen.module.css");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");









var SettingsScreen = function SettingsScreen(_ref) {
  var setAppearance = _ref.setAppearance,
    clearAllErrors = _ref.clearAllErrors,
    connectRandomIp = _ref.connectRandomIp,
    disconnect = _ref.disconnect,
    setProcessConnect = _ref.setProcessConnect,
    setConnectError = _ref.setConnectError,
    processConnect = _ref.processConnect,
    checkAndConnect = _ref.checkAndConnect,
    userData = _ref.userData,
    apiGateways = _ref.apiGateways,
    apiGatewayMain = _ref.apiGatewayMain,
    subMenu = _ref.subMenu,
    setSubMenu = _ref.setSubMenu,
    processDisconnect = _ref.processDisconnect;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext_js__WEBPACK_IMPORTED_MODULE_2__["default"]),
    t = _useContext.t;
  var _useBorderManager = (0,_src_hooks_useBorderManager__WEBPACK_IMPORTED_MODULE_6__.useBorderManager)(),
    handleMouseEnter = _useBorderManager.handleMouseEnter,
    handleMouseLeave = _useBorderManager.handleMouseLeave,
    shouldRemoveBorder = _useBorderManager.shouldRemoveBorder;
  var list = ['setting_general', 'setting_network_and_privacy', 'setting_referral_hub'];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_8__["default"].addEvents('extension.show_setting_screen');
  }, []);
  function getContentByMenu(item) {
    switch (item) {
      case 'setting_general':
        return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_GeneralSettingsScreen_GeneralSettingsScreen_jsx__WEBPACK_IMPORTED_MODULE_3__["default"], {
          onNavigate: function onNavigate() {
            return setSubMenu('');
          },
          setAppearance: setAppearance,
          setConnectError: setConnectError,
          clearAllErrors: clearAllErrors,
          userDataMain: userData
        });
      case 'setting_network_and_privacy':
        return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_NetworkAndPrivacy_NetworkAndPrivacy_jsx__WEBPACK_IMPORTED_MODULE_5__["default"], {
          onNavigate: function onNavigate() {
            return setSubMenu('');
          },
          connectRandomIp: connectRandomIp,
          disconnect: disconnect,
          setProcessConnect: setProcessConnect,
          setConnectError: setConnectError,
          processConnect: processConnect,
          checkAndConnect: checkAndConnect,
          userDataMain: userData,
          apiGateways: apiGateways,
          apiGatewayMain: apiGatewayMain,
          processDisconnect: processDisconnect
        });
      case 'setting_referral_hub':
        return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_ReferralHub_ReferralHub_jsx__WEBPACK_IMPORTED_MODULE_4__["default"], {
          onNavigate: function onNavigate() {
            return setSubMenu('');
          }
        });
      default:
        return getDefaultSettings();
    }
  }
  function getDefaultSettings() {
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].container
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      className: _SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].header
    }, t('setting')), list.map(function (item, index) {
      return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
        key: item,
        className: "".concat(_SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].settingItemWrapper, " ").concat(shouldRemoveBorder(index) ? _SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].noBorder : ""),
        onClick: function onClick() {
          return setSubMenu(item);
        },
        onMouseEnter: function onMouseEnter() {
          return handleMouseEnter(index);
        },
        onMouseLeave: handleMouseLeave
      }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
        className: _SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].settingItem
      }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
        className: _SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].settingItemIconTitle
      }, t(item)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
        className: _SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_7__["default"].settingItemIcon
      }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_RightArrowSVG__WEBPACK_IMPORTED_MODULE_1__["default"], null))));
    }));
  }
  return getContentByMenu(subMenu);
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SettingsScreen);

/***/ }),

/***/ "./src/components/pages/SettingsScreen/SettingsScreen.module.css":
/*!***********************************************************************!*\
  !*** ./src/components/pages/SettingsScreen/SettingsScreen.module.css ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./SettingsScreen.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/pages/SettingsScreen/SettingsScreen.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_SettingsScreen_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/Alert/Alert.jsx":
/*!**********************************************************!*\
  !*** ./src/components/shared/components/Alert/Alert.jsx ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   alertTypes: () => (/* binding */ alertTypes),
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _svg_AlertErrorSVG__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @svg/AlertErrorSVG */ "./src/components/shared/svg/AlertErrorSVG.jsx");
/* harmony import */ var _svg_AlertWarningSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/AlertWarningSVG */ "./src/components/shared/svg/AlertWarningSVG.jsx");
/* harmony import */ var _svg_AlertInfoSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/AlertInfoSVG */ "./src/components/shared/svg/AlertInfoSVG.jsx");
/* harmony import */ var _Alert_module_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./Alert.module.css */ "./src/components/shared/components/Alert/Alert.module.css");
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }





var alertTypes = {
  error: 'error',
  warning: 'warning',
  info: 'info'
};
var iconsByType = _defineProperty(_defineProperty(_defineProperty({}, alertTypes.error, _svg_AlertErrorSVG__WEBPACK_IMPORTED_MODULE_1__["default"]), alertTypes.warning, _svg_AlertWarningSVG__WEBPACK_IMPORTED_MODULE_2__["default"]), alertTypes.info, _svg_AlertInfoSVG__WEBPACK_IMPORTED_MODULE_3__["default"]);
var stylesByType = _defineProperty(_defineProperty(_defineProperty({}, alertTypes.error, _Alert_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].error), alertTypes.warning, _Alert_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].warning), alertTypes.info, _Alert_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].info);
var Alert = function Alert(_ref) {
  var _ref$type = _ref.type,
    type = _ref$type === void 0 ? alertTypes.error : _ref$type,
    className = _ref.className,
    children = _ref.children;
  var Icon = iconsByType[type];
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_Alert_module_css__WEBPACK_IMPORTED_MODULE_4__["default"].wrapper, " ").concat(stylesByType[type], " ").concat(className)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Icon, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, children));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Alert);

/***/ }),

/***/ "./src/components/shared/components/Alert/Alert.module.css":
/*!*****************************************************************!*\
  !*** ./src/components/shared/components/Alert/Alert.module.css ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Alert_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./Alert.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Alert/Alert.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Alert_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Alert_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Alert_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Alert_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/AnotherProxy/AnotherProxy.jsx":
/*!************************************************************************!*\
  !*** ./src/components/shared/components/AnotherProxy/AnotherProxy.jsx ***!
  \************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./AnotherProxy.module.css */ "./src/components/shared/components/AnotherProxy/AnotherProxy.module.css");
/* harmony import */ var _svg_WarningIconSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/WarningIconSVG */ "./src/components/shared/svg/WarningIconSVG.jsx");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_4__);





var AnotherProxy = function AnotherProxy() {
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var handleManageExtensions = function handleManageExtensions() {
    var browser = _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().getBrowser();
    switch (browser) {
      case 'firefox':
        try {
          _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().tabs.create({
            url: "https://support.mozilla.org/kb/disable-or-remove-add-ons"
          });
        } catch (err) {
          window.open('https://addons.mozilla.org/', '_blank');
        }
        break;
      case 'edge':
        _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().tabs.create({
          url: 'edge://extensions'
        });
        break;
      default:
        _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().tabs.create({
          url: 'chrome://extensions'
        });
    }
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_WarningIconSVG__WEBPACK_IMPORTED_MODULE_3__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].textContainer
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].title
  }, t('unable_to_access_proxy_settings')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].text
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('another_extension_controlling_line1')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('another_extension_controlling_line2')))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].button
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: handleManageExtensions
  }, t('manage_extensions'))));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AnotherProxy);

/***/ }),

/***/ "./src/components/shared/components/AnotherProxy/AnotherProxy.module.css":
/*!*******************************************************************************!*\
  !*** ./src/components/shared/components/AnotherProxy/AnotherProxy.module.css ***!
  \*******************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./AnotherProxy.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/AnotherProxy/AnotherProxy.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_AnotherProxy_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/BottomMenu/BottomMenu.jsx":
/*!********************************************************************!*\
  !*** ./src/components/shared/components/BottomMenu/BottomMenu.jsx ***!
  \********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ BottomMenu)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _Button_jsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../Button.jsx */ "./src/components/shared/components/Button.jsx");
/* harmony import */ var _BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./BottomMenu.module.css */ "./src/components/shared/components/BottomMenu/BottomMenu.module.css");
/* harmony import */ var _svg_HomeIconSVG_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/HomeIconSVG.jsx */ "./src/components/shared/svg/HomeIconSVG.jsx");
/* harmony import */ var _svg_ProfileIconSVG_jsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @svg/ProfileIconSVG.jsx */ "./src/components/shared/svg/ProfileIconSVG.jsx");
/* harmony import */ var _svg_HelpIconSVG_jsx__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @svg/HelpIconSVG.jsx */ "./src/components/shared/svg/HelpIconSVG.jsx");
/* harmony import */ var _svg_SettingsIconSVG_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @svg/SettingsIconSVG.jsx */ "./src/components/shared/svg/SettingsIconSVG.jsx");







function BottomMenu(_ref) {
  var view = _ref.view,
    setView = _ref.setView,
    setSubMenu = _ref.setSubMenu;
  var menuItems = [{
    id: 'home',
    icon: _svg_HomeIconSVG_jsx__WEBPACK_IMPORTED_MODULE_3__["default"],
    label: 'VPN'
  }, {
    id: 'help',
    icon: _svg_HelpIconSVG_jsx__WEBPACK_IMPORTED_MODULE_5__["default"],
    label: 'Help'
  }, {
    id: 'profile',
    icon: _svg_ProfileIconSVG_jsx__WEBPACK_IMPORTED_MODULE_4__["default"],
    label: 'Profile'
  }, {
    id: 'settings',
    icon: _svg_SettingsIconSVG_jsx__WEBPACK_IMPORTED_MODULE_6__["default"],
    label: 'Settings'
  }];
  var setViewLocal = function setViewLocal(id) {
    if (id === 'settings') {
      setSubMenu();
    }
    setView(id);
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].menu
  }, menuItems.map(function (item) {
    var Icon = item.icon;
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_Button_jsx__WEBPACK_IMPORTED_MODULE_1__["default"], {
      key: item.id,
      className: "".concat(_BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].button, " ").concat(view.includes(item.id) ? _BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].active : ''),
      onClick: function onClick() {
        return setViewLocal(item.id);
      }
    }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Icon, null), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
      className: "sr-only"
    }, item.label));
  }));
}

/***/ }),

/***/ "./src/components/shared/components/BottomMenu/BottomMenu.module.css":
/*!***************************************************************************!*\
  !*** ./src/components/shared/components/BottomMenu/BottomMenu.module.css ***!
  \***************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./BottomMenu.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/BottomMenu/BottomMenu.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_BottomMenu_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/Button.jsx":
/*!*****************************************************!*\
  !*** ./src/components/shared/components/Button.jsx ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

var Button = function Button(_ref) {
  var className = _ref.className,
    onClick = _ref.onClick,
    children = _ref.children,
    _ref$disabled = _ref.disabled,
    disabled = _ref$disabled === void 0 ? false : _ref$disabled;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    className: className,
    onClick: onClick,
    disabled: disabled
  }, children);
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Button);

/***/ }),

/***/ "./src/components/shared/components/Checkbox/Checkbox.jsx":
/*!****************************************************************!*\
  !*** ./src/components/shared/components/Checkbox/Checkbox.jsx ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _Checkbox_module_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Checkbox.module.css */ "./src/components/shared/components/Checkbox/Checkbox.module.css");


var Checkbox = function Checkbox(_ref) {
  var onChange = _ref.onChange,
    checked = _ref.checked,
    children = _ref.children;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    onClick: onChange,
    className: "".concat(_Checkbox_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].wrapper, " ").concat(checked ? _Checkbox_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].checked : '')
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Checkbox_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].button
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    width: "12",
    height: "10",
    viewBox: "0 0 12 10",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M4 9.4L0 5.4L1.4 4L4 6.6L10.6 0L12 1.4L4 9.4Z",
    fill: "white"
  }))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, children));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Checkbox);

/***/ }),

/***/ "./src/components/shared/components/Checkbox/Checkbox.module.css":
/*!***********************************************************************!*\
  !*** ./src/components/shared/components/Checkbox/Checkbox.module.css ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Checkbox_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./Checkbox.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Checkbox/Checkbox.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Checkbox_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Checkbox_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Checkbox_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Checkbox_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.jsx":
/*!********************************************************************************************************!*\
  !*** ./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.jsx ***!
  \********************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./DisabledPermissionsExtension.module.css */ "./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.module.css");
/* harmony import */ var _svg_WarningIconSVG__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @svg/WarningIconSVG */ "./src/components/shared/svg/WarningIconSVG.jsx");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_4__);





var DisabledPermissionsExtension = function DisabledPermissionsExtension() {
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var handleManageExtensions = function handleManageExtensions() {
    if (_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().isFireFoxBrowser()) {
      _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().tabs.create({
        url: 'about:addons'
      });
    } else {
      _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().tabs.create({
        url: 'chrome://extensions/'
      });
    }
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].wrapper
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_WarningIconSVG__WEBPACK_IMPORTED_MODULE_3__["default"], null)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].textContainer
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].title
  }, t('limited_access_error')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("span", {
    className: _DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].text
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('limited_access_line1')), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("p", null, t('limited_access_line2')))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].button
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("button", {
    onClick: handleManageExtensions
  }, t('limited_access_action'))));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (DisabledPermissionsExtension);

/***/ }),

/***/ "./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.module.css":
/*!***************************************************************************************************************!*\
  !*** ./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.module.css ***!
  \***************************************************************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./DisabledPermissionsExtension.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_DisabledPermissionsExtension_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/Input/Input.jsx":
/*!**********************************************************!*\
  !*** ./src/components/shared/components/Input/Input.jsx ***!
  \**********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ Input)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _input_module_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./input.module.css */ "./src/components/shared/components/Input/input.module.css");
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");



function Input(_ref) {
  var value = _ref.value,
    updValue = _ref.updValue,
    label = _ref.label,
    typeInput = _ref.typeInput,
    name = _ref.name,
    error = _ref.error,
    errorText = _ref.errorText,
    required = _ref.required,
    placeholder = _ref.placeholder,
    _ref$disabled = _ref.disabled,
    disabled = _ref$disabled === void 0 ? false : _ref$disabled,
    innerRef = _ref.innerRef;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_2__["default"]),
    t = _useContext.t;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_input_module_css__WEBPACK_IMPORTED_MODULE_1__["default"]['input-wrapper'], " ").concat(error ? _input_module_css__WEBPACK_IMPORTED_MODULE_1__["default"]['has-error'] : '', " ").concat(disabled ? _input_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].disabled : '', "  "),
    style: {
      borderColor: value === '' ? 'var(--border-select)' : 'rgba(62, 159, 248, 1)'
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("input", {
    ref: innerRef,
    disabled: disabled,
    type: typeInput,
    required: required,
    placeholder: placeholder,
    value: value,
    onChange: updValue,
    name: name
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("label", null, t(label))), error && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _input_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].errorText
  }, t(errorText)));
}

/***/ }),

/***/ "./src/components/shared/components/Input/input.module.css":
/*!*****************************************************************!*\
  !*** ./src/components/shared/components/Input/input.module.css ***!
  \*****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_input_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./input.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Input/input.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_input_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_input_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_input_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_input_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/Selector/Selector.jsx":
/*!****************************************************************!*\
  !*** ./src/components/shared/components/Selector/Selector.jsx ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Selector.module.css */ "./src/components/shared/components/Selector/Selector.module.css");
/* harmony import */ var _svg_SelectArrowSVG__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @svg/SelectArrowSVG */ "./src/components/shared/svg/SelectArrowSVG.jsx");
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }



var Selector = function Selector(_ref) {
  var list = _ref.list,
    selectedElement = _ref.selectedElement,
    onChange = _ref.onChange,
    selectorId = _ref.selectorId,
    openSelectorId = _ref.openSelectorId,
    setOpenSelectorId = _ref.setOpenSelectorId;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState2 = _slicedToArray(_useState, 2),
    displayValue = _useState2[0],
    setDisplayValue = _useState2[1];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var selectedItem = list.find(function (item) {
      return item[0] === selectedElement;
    });
    setDisplayValue(selectedItem ? selectedItem[1] : list[0][1]);
  }, [selectedElement, list]);
  var handleItemClick = function handleItemClick(value) {
    onChange(value);
    setOpenSelectorId(null);
  };
  var isOpen = openSelectorId === selectorId;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "".concat(_Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].selectWrapper, " ").concat(isOpen ? _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].active : '')
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].select,
    onClick: function onClick() {
      return setOpenSelectorId(isOpen ? null : selectorId);
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].selectText
  }, displayValue), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_svg_SelectArrowSVG__WEBPACK_IMPORTED_MODULE_2__.SelectArrowSVG, {
    className: isOpen ? _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].selectIconOpen : _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].selectIcon
  })), isOpen && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].selectList
  }, list.map(function (_ref2) {
    var _ref3 = _slicedToArray(_ref2, 2),
      key = _ref3[0],
      value = _ref3[1];
    return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
      key: key,
      onClick: function onClick() {
        return handleItemClick(key);
      },
      className: "".concat(_Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].selectListItem, " ").concat(key === selectedElement ? _Selector_module_css__WEBPACK_IMPORTED_MODULE_1__["default"].selectListItemSelected : '')
    }, value);
  })));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Selector);

/***/ }),

/***/ "./src/components/shared/components/Selector/Selector.module.css":
/*!***********************************************************************!*\
  !*** ./src/components/shared/components/Selector/Selector.module.css ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Selector_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./Selector.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Selector/Selector.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Selector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Selector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Selector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Selector_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/components/Textarea/Textarea.jsx":
/*!****************************************************************!*\
  !*** ./src/components/shared/components/Textarea/Textarea.jsx ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../../context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _Textarea_module_css__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./Textarea.module.css */ "./src/components/shared/components/Textarea/Textarea.module.css");



var Textarea = function Textarea(_ref) {
  var placeholder = _ref.placeholder,
    value = _ref.value,
    _onChange = _ref.onChange,
    innerRef = _ref.innerRef,
    error = _ref.error,
    errorText = _ref.errorText;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("textarea", {
    ref: innerRef,
    className: "".concat(_Textarea_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].textarea, " ").concat(error ? _Textarea_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].hasError : ''),
    placeholder: placeholder !== null && placeholder !== void 0 ? placeholder : t("type_your_message"),
    value: value,
    onChange: function onChange(e) {
      return _onChange(e.target.value);
    }
  }), error && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: _Textarea_module_css__WEBPACK_IMPORTED_MODULE_2__["default"].error
  }, t(errorText)));
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Textarea);

/***/ }),

/***/ "./src/components/shared/components/Textarea/Textarea.module.css":
/*!***********************************************************************!*\
  !*** ./src/components/shared/components/Textarea/Textarea.module.css ***!
  \***********************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js */ "./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleDomAPI.js */ "./node_modules/style-loader/dist/runtime/styleDomAPI.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertBySelector.js */ "./node_modules/style-loader/dist/runtime/insertBySelector.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js */ "./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/insertStyleElement.js */ "./node_modules/style-loader/dist/runtime/insertStyleElement.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! !../../../../../node_modules/style-loader/dist/runtime/styleTagTransform.js */ "./node_modules/style-loader/dist/runtime/styleTagTransform.js");
/* harmony import */ var _node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Textarea_module_css__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! !!../../../../../node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./Textarea.module.css */ "./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[1].use[1]!./src/components/shared/components/Textarea/Textarea.module.css");

      
      
      
      
      
      
      
      
      

var options = {};

options.styleTagTransform = (_node_modules_style_loader_dist_runtime_styleTagTransform_js__WEBPACK_IMPORTED_MODULE_5___default());
options.setAttributes = (_node_modules_style_loader_dist_runtime_setAttributesWithoutAttributes_js__WEBPACK_IMPORTED_MODULE_3___default());

      options.insert = _node_modules_style_loader_dist_runtime_insertBySelector_js__WEBPACK_IMPORTED_MODULE_2___default().bind(null, "head");
    
options.domAPI = (_node_modules_style_loader_dist_runtime_styleDomAPI_js__WEBPACK_IMPORTED_MODULE_1___default());
options.insertStyleElement = (_node_modules_style_loader_dist_runtime_insertStyleElement_js__WEBPACK_IMPORTED_MODULE_4___default());

var update = _node_modules_style_loader_dist_runtime_injectStylesIntoStyleTag_js__WEBPACK_IMPORTED_MODULE_0___default()(_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Textarea_module_css__WEBPACK_IMPORTED_MODULE_6__["default"], options);




       /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Textarea_module_css__WEBPACK_IMPORTED_MODULE_6__["default"] && _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Textarea_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals ? _node_modules_css_loader_dist_cjs_js_ruleSet_1_rules_1_use_1_Textarea_module_css__WEBPACK_IMPORTED_MODULE_6__["default"].locals : undefined);


/***/ }),

/***/ "./src/components/shared/svg/AlertErrorSVG.jsx":
/*!*****************************************************!*\
  !*** ./src/components/shared/svg/AlertErrorSVG.jsx ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ AlertErrorSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function AlertErrorSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    width: "24",
    height: "24",
    viewBox: "0 0 24 24",
    fill: "none"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M14.9856 9.01465L9.01455 14.9857",
    stroke: "#FF3B30"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M9.01465 9.01465L14.9857 14.9857",
    stroke: "#FF3B30"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "12",
    cy: "12",
    r: "9.26855",
    stroke: "#FF3B30"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/AlertInfoSVG.jsx":
/*!****************************************************!*\
  !*** ./src/components/shared/svg/AlertInfoSVG.jsx ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ AlertInfoSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function AlertInfoSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    width: "24",
    height: "24",
    viewBox: "0 0 24 24",
    fill: "none"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M12 2.89551C6.97956 2.89551 2.89551 6.97956 2.89551 12C2.89551 13.6852 3.35736 15.2633 4.15838 16.6185C5.21746 18.4095 6.87097 19.8092 8.84741 20.5411C9.83035 20.9049 10.8923 21.1045 12 21.1045C13.1077 21.1045 14.1697 20.9049 15.1526 20.5411C17.1227 19.8113 18.7727 18.4187 19.8318 16.6347C20.6391 15.276 21.1045 13.6916 21.1045 12C21.1045 6.97956 17.0204 2.89551 12 2.89551ZM18.9172 15.7724L18.5259 15.4036L15.8542 12.8842L15.056 13.6373L14.157 12.7897L11.9993 10.7548L9.87195 12.7608L8.92921 13.65L8.11762 12.8842L5.45791 15.393L5.07221 15.7569C4.4644 14.64 4.11818 13.3602 4.11818 12.0014C4.11818 7.65576 7.65365 4.121 11.9993 4.121C16.3449 4.121 19.8804 7.65647 19.8804 12.0014C19.8804 13.3672 19.5307 14.6527 18.9172 15.7738V15.7724Z",
    fill: "#3E9FF8"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M11.9955 5.17188L4.65454 12.5736C4.67428 12.8331 4.70813 13.089 4.75396 13.3408C4.79768 13.5791 4.85338 13.8139 4.91967 14.0431L4.92108 14.048L8.10046 11.0527L8.85846 11.7627L11.9998 8.81743L15.1714 11.7909L15.9153 11.0703L19.0679 14.0501C19.0679 14.0501 19.0693 14.0452 19.07 14.0424C19.137 13.8104 19.1927 13.5742 19.2364 13.333C19.2822 13.0813 19.3154 12.826 19.3351 12.5658L11.9955 5.17188Z",
    fill: "#3E9FF8"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/AlertWarningSVG.jsx":
/*!*******************************************************!*\
  !*** ./src/components/shared/svg/AlertWarningSVG.jsx ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ AlertWarningSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function AlertWarningSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    width: "24",
    height: "24",
    viewBox: "0 0 24 24",
    fill: "none"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M10.7988 3.69727C11.3331 2.77275 12.6681 2.77257 13.2021 3.69727L21.1582 17.4785C21.6922 18.4035 21.025 19.5602 19.957 19.5605H4.04395C2.97577 19.5605 2.30771 18.4036 2.8418 17.4785L10.7988 3.69727Z",
    stroke: "#FF9900"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M12 8.15137L12 14.4128",
    stroke: "#FF9900"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M12 15.6924L12 16.8369",
    stroke: "#FF9900"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/ArrowSVG.jsx":
/*!************************************************!*\
  !*** ./src/components/shared/svg/ArrowSVG.jsx ***!
  \************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ ArrowSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function ArrowSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "14",
    height: "8",
    viewBox: "0 0 14 8",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M1 1L6.78787 6.78787C6.90503 6.90503 7.09497 6.90503 7.21213 6.78787L13 1",
    stroke: "currentColor"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/BackArrowSVG.jsx":
/*!****************************************************!*\
  !*** ./src/components/shared/svg/BackArrowSVG.jsx ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ BackArrowSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function BackArrowSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    width: "24",
    height: "24",
    viewBox: "0 0 24 24",
    fill: "none"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M7.825 13L13.425 18.6L12 20L4 12L12 4L13.425 5.4L7.825 11H20V13H7.825Z",
    fill: "currentColor"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/BackButtonSVG.jsx":
/*!*****************************************************!*\
  !*** ./src/components/shared/svg/BackButtonSVG.jsx ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ BackButtonSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function BackButtonSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    viewBox: "0 0 24 24",
    className: "h-6 w-6 text-gray-500",
    style: {
      background: "transparent"
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    fill: "none",
    stroke: "currentColor",
    strokeWidth: "2",
    d: "M15 18l-6-6 6-6"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/CheckSVG.jsx":
/*!************************************************!*\
  !*** ./src/components/shared/svg/CheckSVG.jsx ***!
  \************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ CheckSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function CheckSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    width: "15",
    height: "11",
    viewBox: "0 0 15 11",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M1.2168 5.47761L5.08689 9.34893L13.7845 0.651367",
    stroke: "currentColor",
    strokeWidth: "1.5"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/ConnectingIconSVG.jsx":
/*!*********************************************************!*\
  !*** ./src/components/shared/svg/ConnectingIconSVG.jsx ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function ConnectingIconSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "22",
    height: "22",
    viewBox: "0 0 22 22",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.4905 3.50329C13.4905 4.87827 12.3758 5.99292 11.0009 5.99292C9.62588 5.99292 8.51123 4.87827 8.51123 3.50329C8.51123 2.12831 9.62588 1.01367 11.0009 1.01367C12.3758 1.01367 13.4905 2.12831 13.4905 3.50329Z",
    stroke: "currentColor",
    strokeWidth: "1.5",
    strokeMiterlimit: "10"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M2.24522 14.4589C3.436 13.7714 4.95862 14.1794 5.64613 15.3701C6.3336 16.5609 5.92563 18.0835 4.73484 18.771C3.5441 19.4585 2.02144 19.0505 1.33397 17.8597C0.646461 16.669 1.05447 15.1463 2.24522 14.4589Z",
    stroke: "currentColor",
    strokeWidth: "1.5",
    strokeMiterlimit: "10"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M17.2672 18.771C16.0764 18.0835 15.6685 16.5609 16.3559 15.3701C17.0434 14.1793 18.566 13.7714 19.7568 14.4589C20.9476 15.1464 21.3556 16.669 20.6681 17.8598C19.9806 19.0505 18.458 19.4585 17.2672 18.771Z",
    stroke: "currentColor",
    strokeWidth: "1.5",
    strokeMiterlimit: "10"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M2.30078 11.7727C2.45759 8.92461 3.98215 6.44105 6.22866 4.96773",
    stroke: "currentColor",
    strokeWidth: "1.5",
    strokeMiterlimit: "10"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.7734 4.96773C18.02 6.44109 19.5445 8.92466 19.7013 11.7727",
    stroke: "currentColor",
    strokeWidth: "1.5",
    strokeMiterlimit: "10"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M14.9289 20.0809C13.7487 20.6779 12.4143 21.0142 11.0013 21.0142C9.58834 21.0142 8.25394 20.6779 7.07373 20.0809",
    stroke: "currentColor",
    strokeWidth: "1.5",
    strokeMiterlimit: "10"
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ConnectingIconSVG);

/***/ }),

/***/ "./src/components/shared/svg/ConnectingLoadBorderIconSVG.jsx":
/*!*******************************************************************!*\
  !*** ./src/components/shared/svg/ConnectingLoadBorderIconSVG.jsx ***!
  \*******************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function ConnectingLoadBorderIconSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "46",
    height: "46",
    viewBox: "0 0 46 46",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M45 23.0137C45 35.1639 35.1503 45.0137 23 45.0137C10.8497 45.0137 1 35.1639 1 23.0137C1 10.8634 10.8497 1.01367 23 1.01367",
    stroke: "currentColor",
    strokeWidth: "2",
    strokeLinecap: "round"
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ConnectingLoadBorderIconSVG);

/***/ }),

/***/ "./src/components/shared/svg/ContactInformationSVG.jsx":
/*!*************************************************************!*\
  !*** ./src/components/shared/svg/ContactInformationSVG.jsx ***!
  \*************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ ContactInformationSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function ContactInformationSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "12",
    height: "12",
    viewBox: "0 0 12 12",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_17053_45586)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "7.83045",
    cy: "1.58484",
    r: "1.23436",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "1.85584",
    cy: "1.58484",
    r: "1.23436",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "10.1449",
    cy: "6.91492",
    r: "1.23436",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "6.68079",
    cy: "10.4987",
    r: "1.15012",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "4.96164",
    cy: "5.85666",
    r: "1.97883",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M6.05371 4.1681L7.21259 2.62354",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M6.93066 6.24048L8.89708 6.65982",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M5.66699 7.75049L6.36923 9.50572",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M2.43164 2.65674L3.70882 4.35983",
    stroke: "currentColor",
    strokeWidth: "0.7"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_17053_45586"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "12",
    height: "12",
    fill: "white"
  }))));
}

/***/ }),

/***/ "./src/components/shared/svg/ContactUsSVG.jsx":
/*!****************************************************!*\
  !*** ./src/components/shared/svg/ContactUsSVG.jsx ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ ContactUsSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function ContactUsSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "30",
    height: "30",
    viewBox: "0 0 30 30",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    x: "-0.5",
    y: "0.5",
    width: "18.1245",
    height: "13.5808",
    rx: "3.5",
    transform: "matrix(1 0 0 -1 3.20703 27.4998)",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M20.9793 17.7463H24.3784C26.0353 17.7463 27.3784 16.4032 27.3784 14.7463V8.16549C27.3784 6.50864 26.0353 5.16549 24.3784 5.16549H13.2539C11.5971 5.16549 10.2539 6.50864 10.2539 8.16549V13.2334",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.3281 8.26099H23.8627",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.3281 11.1733H17.2123",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "8.26754",
    cy: "20.2094",
    r: "0.938434",
    fill: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "11.7695",
    cy: "20.2094",
    r: "0.938434",
    fill: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "15.2705",
    cy: "20.2094",
    r: "0.938434",
    fill: "currentColor"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/EditSVG.jsx":
/*!***********************************************!*\
  !*** ./src/components/shared/svg/EditSVG.jsx ***!
  \***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   EditSVG: () => (/* binding */ EditSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var EditSVG = function EditSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "16",
    height: "16",
    viewBox: "0 0 16 16",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M14.4746 3.29993L12.6991 1.52438C12.3731 1.19835 11.8415 1.19813 11.5157 1.52388L2.46289 10.5767L5.42228 13.5361L14.4751 4.4833C14.8009 4.15754 14.8006 3.62596 14.4746 3.29993Z",
    stroke: "currentColor",
    strokeMiterlimit: "22.926",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M1.2793 14.72L2.46308 10.5768L5.42247 13.5362L1.2793 14.72Z",
    stroke: "currentColor",
    strokeMiterlimit: "22.926",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.2914 5.66748L10.332 2.70806",
    stroke: "currentColor",
    strokeMiterlimit: "22.926",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/EnjoyRewardsSVG.jsx":
/*!*******************************************************!*\
  !*** ./src/components/shared/svg/EnjoyRewardsSVG.jsx ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   EnjoyRewardsSVG: () => (/* binding */ EnjoyRewardsSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var EnjoyRewardsSVG = function EnjoyRewardsSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "20",
    height: "20",
    viewBox: "0 0 20 20",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M8.78711 3.2124C9.38619 2.38991 10.6138 2.38991 11.2129 3.2124L11.3076 3.34326C11.8598 4.10142 12.7902 4.48693 13.7168 4.34131L13.877 4.31592C14.882 4.15809 15.7496 5.0257 15.5918 6.03076L15.5664 6.19092C15.4208 7.11749 15.8063 8.04788 16.5645 8.6001L16.6953 8.69482C17.5178 9.29391 17.5178 10.5215 16.6953 11.1206L16.5645 11.2153C15.8063 11.7675 15.4208 12.6979 15.5664 13.6245L15.5918 13.7847C15.7496 14.7897 14.882 15.6573 13.877 15.4995L13.7168 15.4741C12.7902 15.3285 11.8598 15.714 11.3076 16.4722L11.2129 16.603C10.6138 17.4255 9.38619 17.4255 8.78711 16.603L8.69238 16.4722C8.14017 15.714 7.20978 15.3285 6.2832 15.4741L6.12305 15.4995C5.11798 15.6573 4.25038 14.7897 4.4082 13.7847L4.43359 13.6245C4.57921 12.6979 4.1937 11.7675 3.43555 11.2153L3.30469 11.1206C2.48219 10.5215 2.48219 9.29391 3.30469 8.69482L3.43555 8.6001C4.1937 8.04788 4.57921 7.11749 4.43359 6.19092L4.4082 6.03076C4.25038 5.0257 5.11799 4.15809 6.12305 4.31592L6.2832 4.34131C7.20978 4.48693 8.14016 4.10142 8.69238 3.34326L8.78711 3.2124Z",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M9.10645 9.29639H9.80957C10.083 9.29639 10.3092 9.24919 10.4883 9.15479C10.6706 9.06038 10.8057 8.93018 10.8936 8.76416C10.9814 8.59814 11.0254 8.40771 11.0254 8.19287C11.0254 7.96826 10.9847 7.7762 10.9033 7.6167C10.8252 7.45394 10.7048 7.32861 10.542 7.24072C10.3825 7.15283 10.179 7.10889 9.93164 7.10889C9.72331 7.10889 9.53451 7.1512 9.36523 7.23584C9.19922 7.31722 9.06738 7.43441 8.96973 7.5874C8.87207 7.73714 8.82324 7.91618 8.82324 8.12451H7.6416C7.6416 7.74691 7.74089 7.41162 7.93945 7.11865C8.13802 6.82568 8.4082 6.59619 8.75 6.43018C9.09505 6.2609 9.48242 6.17627 9.91211 6.17627C10.3711 6.17627 10.7715 6.25277 11.1133 6.40576C11.4583 6.5555 11.7269 6.78011 11.9189 7.07959C12.111 7.37907 12.207 7.75016 12.207 8.19287C12.207 8.39469 12.1598 8.59977 12.0654 8.80811C11.971 9.01644 11.8311 9.20687 11.6455 9.37939C11.46 9.54867 11.2288 9.68701 10.9521 9.79443C10.6755 9.8986 10.3548 9.95068 9.99023 9.95068H9.10645V9.29639ZM9.10645 10.2144V9.56982H9.99023C10.4069 9.56982 10.7617 9.61865 11.0547 9.71631C11.3509 9.81396 11.5918 9.94906 11.7773 10.1216C11.9629 10.2909 12.098 10.4845 12.1826 10.7026C12.2705 10.9207 12.3145 11.1519 12.3145 11.396C12.3145 11.728 12.2542 12.0243 12.1338 12.2847C12.0166 12.5418 11.849 12.7599 11.6309 12.939C11.4128 13.118 11.1572 13.2531 10.8643 13.3442C10.5745 13.4354 10.2588 13.481 9.91699 13.481C9.611 13.481 9.31803 13.4386 9.03809 13.354C8.75814 13.2694 8.50749 13.144 8.28613 12.978C8.06478 12.8088 7.889 12.5988 7.75879 12.3481C7.63184 12.0942 7.56836 11.8013 7.56836 11.4692H8.74512C8.74512 11.6808 8.79395 11.868 8.8916 12.0308C8.99251 12.1903 9.13249 12.3156 9.31152 12.4067C9.49382 12.4979 9.70215 12.5435 9.93652 12.5435C10.1839 12.5435 10.3971 12.4995 10.5762 12.4116C10.7552 12.3237 10.8919 12.1935 10.9863 12.021C11.084 11.8485 11.1328 11.6401 11.1328 11.396C11.1328 11.1193 11.0791 10.8947 10.9717 10.7222C10.8643 10.5496 10.7113 10.4227 10.5127 10.3413C10.3141 10.2567 10.0798 10.2144 9.80957 10.2144H9.10645Z",
    fill: "currentColor"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/ExportSettingSVG.jsx":
/*!********************************************************!*\
  !*** ./src/components/shared/svg/ExportSettingSVG.jsx ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   ExportSettingSVG: () => (/* binding */ ExportSettingSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var ExportSettingSVG = function ExportSettingSVG(_ref) {
  var props = _ref.props;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "15",
    height: "14",
    viewBox: "0 0 15 14",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M5.30065 4.13343L6.83398 2.6001V9.0001C6.83398 9.4001 7.10065 9.66677 7.50065 9.66677C7.90065 9.66677 8.16732 9.4001 8.16732 9.0001V2.6001L9.70065 4.13343C9.96732 4.4001 10.3673 4.4001 10.634 4.13343C10.9007 3.86676 10.9007 3.46676 10.634 3.2001L7.96732 0.533431C7.90065 0.466764 7.83398 0.400098 7.76732 0.400098C7.63398 0.333431 7.43398 0.333431 7.23398 0.400098C7.16732 0.400098 7.10065 0.466764 7.03398 0.533431L4.36732 3.2001C4.10065 3.46676 4.10065 3.86676 4.36732 4.13343C4.63398 4.4001 5.03398 4.4001 5.30065 4.13343ZM13.5007 8.33343C13.1007 8.33343 12.834 8.6001 12.834 9.0001V11.6668C12.834 12.0668 12.5673 12.3334 12.1673 12.3334H2.83398C2.43398 12.3334 2.16732 12.0668 2.16732 11.6668V9.0001C2.16732 8.6001 1.90065 8.33343 1.50065 8.33343C1.10065 8.33343 0.833984 8.6001 0.833984 9.0001V11.6668C0.833984 12.8001 1.70065 13.6668 2.83398 13.6668H12.1673C13.3007 13.6668 14.1673 12.8001 14.1673 11.6668V9.0001C14.1673 8.6001 13.9007 8.33343 13.5007 8.33343Z",
    fill: "currentColor"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/FastestServerSVG.jsx":
/*!********************************************************!*\
  !*** ./src/components/shared/svg/FastestServerSVG.jsx ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   FastestServerSVG: () => (/* binding */ FastestServerSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var FastestServerSVG = function FastestServerSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "26",
    height: "26",
    viewBox: "0 0 26 26",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_17063_46986)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "26",
    height: "26",
    rx: "13",
    fill: "#3E9FF8"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M0.0800781 2.30786V2.30786C7.06294 9.74022 18.8686 9.74022 25.8515 2.30786V2.30786",
    stroke: "white",
    strokeWidth: "1.3"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M0.0800781 23.7683V23.7683C7.06294 16.3359 18.8686 16.3359 25.8515 23.7683V23.7683",
    stroke: "white",
    strokeWidth: "1.3"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.0195 -0.729004L15.5254 -0.267035C23.4956 7.01214 23.258 19.637 15.0195 26.6111V26.6111",
    stroke: "white",
    strokeWidth: "1.3"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M11.0645 -0.729004L10.5586 -0.267035C2.58839 7.01214 2.82597 19.637 11.0645 26.6111V26.6111",
    stroke: "white",
    strokeWidth: "1.3"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.043 -3.18384L13.043 26.7722",
    stroke: "white",
    strokeWidth: "1.3"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_17063_46986"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "26",
    height: "26",
    rx: "13",
    fill: "white"
  }))));
};

/***/ }),

/***/ "./src/components/shared/svg/HelpIconSVG.jsx":
/*!***************************************************!*\
  !*** ./src/components/shared/svg/HelpIconSVG.jsx ***!
  \***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function HelpIconSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "27",
    height: "26",
    viewBox: "0 0 27 26",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_17006_47135)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M19.7744 4.5542C21.7074 4.55421 23.2744 6.12121 23.2744 8.0542V16.812C23.2744 18.745 21.7074 20.312 19.7744 20.312H11.292L7.51074 23.7173L6.67578 24.4692V20.312H6.25C4.317 20.312 2.75 18.745 2.75 16.812V8.0542C2.75 6.1212 4.317 4.5542 6.25 4.5542H19.7744Z",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.3898 14.4797H12.2599C12.264 14.0909 12.2984 13.773 12.3632 13.526C12.432 13.2749 12.5434 13.0461 12.6973 12.8396C12.8512 12.633 13.0557 12.3981 13.3108 12.1349C13.4971 11.9446 13.6672 11.7664 13.8211 11.6003C13.979 11.4302 14.1066 11.248 14.2038 11.0536C14.301 10.8552 14.3496 10.6183 14.3496 10.3429C14.3496 10.0635 14.299 9.82249 14.1977 9.62C14.1005 9.41752 13.9547 9.2616 13.7604 9.15226C13.57 9.04291 13.3331 8.98824 13.0496 8.98824C12.8147 8.98824 12.592 9.03076 12.3814 9.11581C12.1708 9.20085 12.0007 9.33247 11.8711 9.51066C11.7416 9.6848 11.6747 9.91361 11.6707 10.1971H10.5469C10.555 9.73947 10.6684 9.34665 10.8871 9.01862C11.1098 8.69058 11.4095 8.4395 11.7861 8.26536C12.1627 8.09122 12.5839 8.00415 13.0496 8.00415C13.5639 8.00415 14.0013 8.09729 14.3617 8.28358C14.7262 8.46987 15.0036 8.73716 15.194 9.08544C15.3843 9.42967 15.4795 9.83869 15.4795 10.3125C15.4795 10.677 15.4046 11.0131 15.2547 11.3209C15.1089 11.6246 14.9206 11.9101 14.6898 12.1774C14.4589 12.4447 14.2139 12.6998 13.9547 12.9428C13.732 13.1494 13.5822 13.3822 13.5052 13.6414C13.4283 13.9006 13.3898 14.18 13.3898 14.4797ZM12.2113 16.4054C12.2113 16.2231 12.268 16.0692 12.3814 15.9437C12.4948 15.8182 12.6588 15.7554 12.8735 15.7554C13.0921 15.7554 13.2582 15.8182 13.3716 15.9437C13.485 16.0692 13.5417 16.2231 13.5417 16.4054C13.5417 16.5795 13.485 16.7294 13.3716 16.8549C13.2582 16.9804 13.0921 17.0432 12.8735 17.0432C12.6588 17.0432 12.4948 16.9804 12.3814 16.8549C12.268 16.7294 12.2113 16.5795 12.2113 16.4054Z",
    fill: "currentColor"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_17006_47135"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "26",
    height: "26",
    fill: "white",
    transform: "translate(0.666016)"
  }))));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (HelpIconSVG);

/***/ }),

/***/ "./src/components/shared/svg/HomeIconSVG.jsx":
/*!***************************************************!*\
  !*** ./src/components/shared/svg/HomeIconSVG.jsx ***!
  \***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ HomeIconSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function HomeIconSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "24",
    height: "24",
    viewBox: "0 0 24 24",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M12 12.377L12 22.1113",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.875 10.5039C13.875 11.5395 13.0356 12.3789 12 12.3789C10.9645 12.3789 10.125 11.5395 10.125 10.5039C10.125 9.46835 10.9645 8.62892 12 8.62892C13.0356 8.62892 13.875 9.46835 13.875 10.5039Z",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M8.25013 14.1367C6.34631 12.2329 6.34631 9.14624 8.25013 7.24246",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.75 7.24246C17.6538 9.14624 17.6538 12.2329 15.75 14.1367",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M6.12879 16.2578C3.05342 13.1824 3.05342 8.19632 6.12879 5.12091",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M17.8711 5.12091C20.9465 8.19628 20.9465 13.1824 17.8711 16.2578",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M4.00734 18.3789C-0.398281 13.9733 -0.398281 7.40504 4.00734 2.99937",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M19.9922 2.99937C24.3978 7.40499 24.3978 13.9732 19.9922 18.3789",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/ImportSettingsSVG.jsx":
/*!*********************************************************!*\
  !*** ./src/components/shared/svg/ImportSettingsSVG.jsx ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   ImportSettingsSVG: () => (/* binding */ ImportSettingsSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var ImportSettingsSVG = function ImportSettingsSVG(_ref) {
  var props = _ref.props;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "14",
    height: "14",
    viewBox: "0 0 14 14",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.0007 8.33349C12.6007 8.33349 12.334 8.60015 12.334 9.00015V11.6668C12.334 12.0668 12.0673 12.3335 11.6673 12.3335H2.33398C1.93398 12.3335 1.66732 12.0668 1.66732 11.6668V9.00015C1.66732 8.60015 1.40065 8.33349 1.00065 8.33349C0.600651 8.33349 0.333984 8.60015 0.333984 9.00015V11.6668C0.333984 12.8002 1.20065 13.6668 2.33398 13.6668H11.6673C12.8007 13.6668 13.6673 12.8002 13.6673 11.6668V9.00015C13.6673 8.60015 13.4007 8.33349 13.0007 8.33349Z",
    fill: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M6.33464 7.56667L4.8013 6.03333C4.53464 5.76667 4.13464 5.76667 3.86797 6.03333C3.6013 6.3 3.6013 6.7 3.86797 6.96667L6.53464 9.63333C6.6013 9.7 6.66797 9.76667 6.73464 9.76667C6.93464 9.83333 7.13463 9.83333 7.26797 9.76667C7.33464 9.76667 7.4013 9.7 7.46797 9.63333L10.1346 6.96667C10.4013 6.7 10.4013 6.3 10.1346 6.03333C9.86797 5.76667 9.46797 5.76667 9.2013 6.03333L7.66797 7.56667V1.16667C7.66797 0.766667 7.4013 0.5 7.0013 0.5C6.6013 0.5 6.33464 0.766667 6.33464 1.16667V7.56667Z",
    fill: "currentColor"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/InviteAFriendSVG.jsx":
/*!********************************************************!*\
  !*** ./src/components/shared/svg/InviteAFriendSVG.jsx ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   InviteAFriendSVG: () => (/* binding */ InviteAFriendSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var InviteAFriendSVG = function InviteAFriendSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "14",
    height: "16",
    viewBox: "0 0 14 16",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M9.2168 11.6826H12.5556",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M10.8867 10.0127L10.8867 13.3515",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "7.45034",
    cy: "4.31752",
    r: "3.23159",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M7.44993 7.54883C5.53867 7.54883 1.93656 8.78002 1.13119 13.4208C0.942327 14.5091 1.86418 15.4143 2.96875 15.4143H7.44993",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/LinkSVG.jsx":
/*!***********************************************!*\
  !*** ./src/components/shared/svg/LinkSVG.jsx ***!
  \***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   LinkSVG: () => (/* binding */ LinkSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var LinkSVG = function LinkSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "26",
    height: "26",
    viewBox: "0 0 26 26",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.6829 6.61963H7.91211C6.25526 6.61963 4.91211 7.96277 4.91211 9.61963V17.994C4.91211 19.6509 6.25525 20.994 7.91211 20.994H16.2865C17.9434 20.994 19.2865 19.6509 19.2865 17.994V12.6215",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M12.7207 13.337L21.0135 5.04346M21.0135 5.04346V10.0447M21.0135 5.04346H16.528",
    stroke: "currentColor",
    strokeLinecap: "round"
  })));
};

/***/ }),

/***/ "./src/components/shared/svg/LockIconDarkSVG.jsx":
/*!*******************************************************!*\
  !*** ./src/components/shared/svg/LockIconDarkSVG.jsx ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function LockIconDarkSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "44",
    height: "44",
    viewBox: "0 0 44 44",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "22",
    cy: "22",
    r: "21.5",
    fill: "#292929",
    stroke: "#404042"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    x: "14",
    y: "18",
    width: "16",
    height: "13",
    rx: "3",
    fill: "#FF1F4A"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M17 18V16C17 13.2386 19.2386 11 22 11H22.7583C25.1009 11 27 12.8991 27 15.2417V15.2417",
    stroke: "#FF1F4A",
    strokeWidth: "1.5",
    strokeLinecap: "round"
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LockIconDarkSVG);

/***/ }),

/***/ "./src/components/shared/svg/LockIconLightSVG.jsx":
/*!********************************************************!*\
  !*** ./src/components/shared/svg/LockIconLightSVG.jsx ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function LockIconDarkSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    width: "44",
    height: "44",
    viewBox: "0 0 44 44",
    fill: "none"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "22",
    cy: "22",
    r: "22",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    x: "14",
    y: "18",
    width: "16",
    height: "13",
    rx: "3",
    fill: "#FF2D55"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M17 18V16C17 13.2386 19.2386 11 22 11H22.7583C25.1009 11 27 12.8991 27 15.2417V15.2417",
    stroke: "#FF2D55",
    strokeWidth: "1.5",
    strokeLinecap: "round"
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LockIconDarkSVG);

/***/ }),

/***/ "./src/components/shared/svg/LoginIconLightSVG.jsx":
/*!*********************************************************!*\
  !*** ./src/components/shared/svg/LoginIconLightSVG.jsx ***!
  \*********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ LoginIconLightSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function LoginIconLightSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "140",
    height: "51",
    viewBox: "0 0 140 51",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_16874_47446)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M70.932 47.7194C69.4735 47.7194 68.1934 47.3781 67.0918 46.6954C66.0056 45.9971 65.16 45.0196 64.5549 43.7628C63.9498 42.506 63.6472 41.0398 63.6472 39.3641C63.6472 37.6883 63.9498 36.2298 64.5549 34.9886C65.1755 33.7318 66.0367 32.762 67.1383 32.0793C68.2555 31.3811 69.5433 31.032 71.0018 31.032C72.5844 31.032 73.9576 31.4276 75.1213 32.219C76.285 32.9948 77.1228 34.0731 77.6349 35.454L76.2151 35.9893C75.7962 34.9032 75.1445 34.0498 74.2601 33.4292C73.3757 32.8086 72.2896 32.4982 71.0018 32.4982C69.8226 32.4982 68.7908 32.7775 67.9063 33.3361C67.0375 33.8947 66.3625 34.686 65.8815 35.71C65.4005 36.7341 65.16 37.9521 65.16 39.3641C65.16 40.776 65.4005 42.0018 65.8815 43.0413C66.3625 44.0654 67.0375 44.8567 67.9063 45.4153C68.7908 45.9739 69.8226 46.2531 71.0018 46.2531C71.6069 46.2531 72.212 46.1756 72.8172 46.0204C73.4378 45.8497 74.0119 45.5627 74.5394 45.1593C75.067 44.7559 75.4859 44.205 75.7962 43.5068C76.1221 42.7931 76.285 41.8932 76.285 40.807V39.4804L76.6341 40.5045H72.1189V39.1313H77.6349V47.4867H76.285L76.0755 44.0421L76.3315 44.205C76.0677 45.0429 75.6566 45.7178 75.098 46.2299C74.5394 46.7419 73.8955 47.122 73.1663 47.3703C72.437 47.603 71.6922 47.7194 70.932 47.7194Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M87.2666 47.7194C85.4047 47.7194 83.9773 47.1996 82.9842 46.16C81.9912 45.1205 81.4947 43.6077 81.4947 41.6216V31.2647H83.0075V41.4587C83.0075 42.5138 83.1549 43.406 83.4497 44.1352C83.7445 44.849 84.2022 45.392 84.8229 45.7644C85.459 46.1213 86.2736 46.2997 87.2666 46.2997C88.2441 46.2997 89.051 46.1135 89.6871 45.7411C90.3233 45.3532 90.7965 44.8024 91.1068 44.0887C91.4172 43.3594 91.5723 42.4672 91.5723 41.4122V31.2647H93.0619V41.5053C93.0619 43.5223 92.5653 45.0662 91.5723 46.1368C90.5793 47.1919 89.1441 47.7194 87.2666 47.7194Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M95.55 47.4867L101.578 31.2647H102.858L108.863 47.4867H107.21L102.23 33.3827L97.249 47.4867H95.55ZM98.529 43.3206L99.0178 41.9475H105.418L105.93 43.3206H98.529Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M112.101 47.4867V31.2647H116.663C117.857 31.2647 118.843 31.4432 119.619 31.8C120.41 32.1569 120.999 32.6689 121.387 33.3361C121.791 34.0033 121.992 34.8101 121.992 35.7566C121.992 37.0444 121.62 38.0685 120.875 38.8288C120.131 39.589 119.052 40.0468 117.64 40.2019C117.423 40.2174 117.159 40.233 116.849 40.2485C116.554 40.2485 116.267 40.2485 115.988 40.2485H113.614V47.4867H112.101ZM121.318 47.4867L117.012 40.039L118.571 39.8295L123.063 47.4867H121.318ZM113.614 38.8986H116.5C117.322 38.8986 118.028 38.79 118.618 38.5727C119.207 38.34 119.657 37.9987 119.968 37.5487C120.293 37.0832 120.456 36.4858 120.456 35.7566C120.456 35.0273 120.293 34.4377 119.968 33.9878C119.642 33.5223 119.184 33.1809 118.594 32.9637C118.005 32.7465 117.307 32.6379 116.5 32.6379H113.614V38.8986Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M126.459 47.4867V31.2647H130.835C133.457 31.2647 135.489 31.9862 136.932 33.4292C138.391 34.8567 139.12 36.8815 139.12 39.5037C139.12 42.0794 138.399 44.0576 136.956 45.4386C135.528 46.804 133.48 47.4867 130.811 47.4867H126.459ZM127.972 46.0902H130.672C132.146 46.0902 133.395 45.8575 134.419 45.392C135.443 44.9265 136.219 44.205 136.746 43.2275C137.289 42.25 137.561 40.9932 137.561 39.4572C137.561 37.9211 137.289 36.6488 136.746 35.6402C136.219 34.6317 135.451 33.8869 134.442 33.4059C133.433 32.9094 132.223 32.6612 130.811 32.6612H127.972V46.0902Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M75.0978 11.1013C75.1098 10.4174 75.024 9.76135 74.8406 9.12527C74.035 6.33768 70.5994 6.20209 68.2704 6.82022C67.3731 7.0595 66.4021 7.45032 65.3512 7.99468C65.2097 8.06846 65.0442 8.09238 64.8906 8.07444C64.7311 8.05051 64.5835 7.97673 64.4659 7.86706C64.0671 7.48222 63.6723 6.68064 63.4948 6.24596C63.2615 5.69562 63.4709 5.24298 64.1209 4.89403C67.4708 3.12737 70.9065 2.70464 74.4278 3.62786C77.7099 4.48926 79.3191 7.31473 79.4068 10.7085C79.4507 12.4811 79.4627 14.0464 79.4367 15.3983C79.3929 17.9367 79.5484 21.5637 78.1805 22.4969C76.7807 23.6754 72.2265 23.6714 69.6263 23.5198C68.0531 23.4281 66.5775 22.9874 65.1957 22.2058C64.3104 21.7053 63.5985 21.0014 63.0442 20.0962C62.5776 19.3325 62.3443 18.4013 62.3443 17.3006C62.3264 12.8241 66.0132 11.3206 69.9713 11.2648C71.4827 11.2469 73.1357 11.2409 74.9443 11.2588C74.9882 11.2588 75.024 11.2409 75.054 11.217C75.0839 11.187 75.0978 11.1492 75.1038 11.1073L75.0978 11.1013ZM75.1277 14.4213C75.1277 14.3794 75.1158 14.3355 75.0839 14.3056C75.054 14.2757 75.0161 14.2558 74.9742 14.2558C72.8486 14.2 71.066 14.2139 69.6343 14.2917C69.2355 14.3096 68.7809 14.4253 68.2704 14.6287C67.1638 15.0693 66.6294 15.9746 66.6732 17.3445C66.7032 18.4751 67.2256 19.2707 68.2285 19.7233C69.6981 20.3833 73.2394 20.6126 74.6173 19.7991C75.1217 19.5219 75.1078 18.0424 75.1377 16.6207C75.1497 16.4871 75.1018 15.7373 75.1377 14.4213H75.1317H75.1277Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M129.79 10.683H129.83C129.85 10.683 129.862 10.683 129.876 10.6711C130.647 10.1467 131.415 9.60829 132.181 9.06393C134.109 7.69008 133.7 6.04504 133.921 3.99323C133.979 3.46283 134.304 3.18368 134.883 3.16972C136.097 3.1438 136.992 3.14978 137.57 3.18966C137.778 3.20162 137.967 3.28736 138.117 3.42894C138.266 3.57051 138.358 3.75994 138.376 3.96731C138.603 6.26039 138.195 8.89644 136.512 10.4378C135.493 11.371 134.408 12.2065 133.259 12.9243C133.24 12.9362 133.228 12.9502 133.214 12.9701C133.2 12.9901 133.2 13.008 133.2 13.028C133.2 13.0479 133.2 13.0738 133.214 13.0858C133.226 13.1057 133.24 13.1177 133.259 13.1317C134.272 13.8056 135.297 14.5494 136.344 15.3729C138.649 17.1874 138.883 19.4665 138.896 22.3558C138.896 23.1654 138.468 23.5742 137.604 23.5742C136.508 23.5742 135.728 23.5622 135.247 23.5482C135 23.5422 134.767 23.4386 134.597 23.2571C134.428 23.0816 134.33 22.8424 134.338 22.5971C134.364 20.6869 134.143 18.4656 132.546 17.311C131.598 16.6251 130.695 15.997 129.844 15.4208C129.83 15.4088 129.812 15.4008 129.792 15.4008C129.772 15.4008 129.752 15.4008 129.74 15.4208C128.889 16.003 127.993 16.6391 127.046 17.319C125.455 18.4715 125.234 20.7008 125.268 22.6111C125.268 22.8563 125.176 23.0896 125.008 23.2711C124.839 23.4465 124.606 23.5502 124.358 23.5622C123.884 23.5821 123.098 23.5941 122.001 23.5941C121.132 23.5941 120.703 23.1933 120.703 22.3837C120.709 19.4945 120.945 17.2153 123.242 15.4008C124.281 14.5773 125.307 13.8276 126.32 13.1536C126.34 13.1416 126.352 13.1277 126.366 13.1077C126.378 13.0878 126.378 13.0698 126.378 13.0499C126.378 13.03 126.378 13.004 126.366 12.9921C126.352 12.9801 126.34 12.9602 126.32 12.9462C125.172 12.2264 124.087 11.3989 123.06 10.4597C121.371 8.91837 120.957 6.28831 121.184 3.98924C121.204 3.78187 121.294 3.59444 121.443 3.45087C121.593 3.3093 121.788 3.22356 121.989 3.21159C122.568 3.17371 123.463 3.16573 124.677 3.19165C125.262 3.20362 125.581 3.47679 125.638 4.00719C125.866 6.06099 125.463 7.70603 127.391 9.07191C128.157 9.61627 128.931 10.1467 129.702 10.6711C129.714 10.6711 129.728 10.683 129.748 10.683H129.794H129.79Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M98.8665 10.4384C98.6392 6.25303 95.9294 3.75257 91.9375 3.27003C86.6215 2.63594 81.9735 5.10649 81.9077 10.8651C81.8639 14.4762 81.8519 18.1192 81.8778 27.14C81.8838 28.3783 83.2337 28.2008 84.1888 28.1769C85.3972 28.147 86.139 28.3723 86.1689 26.8409C86.2048 25.0304 86.2167 24.5299 86.2067 23.2597C86.6554 23.4511 87.2137 23.5728 87.9335 23.5588H91.3991C91.5586 23.5628 91.7181 23.5648 91.8816 23.5588C95.9832 23.4252 98.4658 20.6675 98.7968 16.6895C98.9623 14.7135 98.9862 12.6338 98.8646 10.4364L98.8665 10.4384ZM94.6234 17.5888C94.2864 18.8032 93.5626 19.5828 92.4599 19.9318C91.8019 20.1351 90.8029 20.0973 90.2107 20.0973C90.2107 20.0973 87.451 20.1651 86.7192 19.5828C86.4799 19.3934 86.3403 18.6676 86.2606 17.7783C86.2227 17.3476 86.2227 17.3117 86.2147 17.1442C86.115 15.4074 86.1848 13.3975 86.1848 13.3975C86.1928 12.5201 86.2107 11.6787 86.2406 10.8771C86.3084 8.99874 87.2157 7.17425 89.2336 6.83926C91.8637 6.40058 93.9175 7.33576 94.6413 9.37959C94.8686 10.0137 94.9902 11.0625 95.0102 12.5281C95.0281 14.1751 95.072 15.9737 94.6234 17.5908V17.5888Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M105.599 16.5075C105.599 16.4716 105.617 16.4338 105.641 16.4098C105.665 16.3799 105.703 16.368 105.739 16.368C113.232 16.3739 115.001 16.3799 115.258 16.362C116.827 16.362 118.153 14.9801 118.227 13.7339C118.325 11.6701 118.387 9.99519 117.774 8.26042C116.955 5.96535 115.324 4.42998 112.871 3.66429C111.057 3.09202 109.27 3.01226 107.517 3.42103C104.277 4.17675 102.349 6.57551 101.687 9.02811C101.494 9.74793 101.356 10.9762 101.356 12.7788C101.356 14.5814 101.506 16.4736 101.703 18.0429C102.183 20.5135 103.525 22.9162 107.703 23.4845C109.934 23.6859 113.11 23.5961 115.424 23.307C116.052 23.2213 116.636 23.0817 117.18 22.8763C117.314 22.8225 117.425 22.7308 117.505 22.6131C117.587 22.4895 117.621 22.3539 117.621 22.2083C117.647 21.6181 117.729 19.7896 117.192 19.4945C117.088 19.4307 116.993 19.4128 116.907 19.4227C116.327 19.4945 115.3 19.67 114.53 19.7876C112.171 20.0728 106.843 20.7208 105.994 18.8545C105.707 18.2802 105.565 17.684 105.589 16.4896L105.595 16.5075H105.599ZM105.617 10.9702C105.611 9.80775 106.014 8.68714 106.736 7.86561C107.452 7.04409 108.429 6.57551 109.45 6.57551H110.04C110.393 6.57551 111.625 6.64928 112.313 6.92844C112.789 7.12186 113.214 7.44488 113.575 7.85365C113.936 8.26242 114.217 8.74297 114.413 9.27935C114.608 9.80975 114.712 10.382 114.712 10.9603V11.6821C114.694 12.2324 114.508 13.1138 113.344 13.2254L105.677 13.2354C105.659 13.2354 105.647 13.2294 105.635 13.2175C105.629 13.2055 105.617 13.1756 105.617 13.1756V10.9722V10.9702Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M25.3504 0C11.3715 0 0 11.3715 0 25.3504C0 30.0427 1.28597 34.4366 3.5163 38.2101C6.46521 43.1969 11.0692 47.0941 16.5724 49.1321C19.3092 50.1451 22.266 50.7007 25.3504 50.7007C28.4347 50.7007 31.3915 50.1451 34.1284 49.1321C39.6139 47.1 44.2081 43.2225 47.157 38.2553C49.405 34.472 50.7007 30.0604 50.7007 25.3504C50.7007 11.3715 39.3292 0 25.3504 0ZM44.6105 35.8541L43.5209 34.8273L36.0819 27.8124L33.8594 29.9092L31.3562 27.5493L25.3484 21.8832L19.4251 27.4688L16.8001 29.9445L14.5403 27.8124L7.1347 34.7979L6.06077 35.8109C4.36838 32.701 3.40439 29.1376 3.40439 25.3543C3.40439 13.2544 13.2485 3.41225 25.3484 3.41225C37.4483 3.41225 47.2924 13.2563 47.2924 25.3543C47.2924 29.1572 46.3186 32.7364 44.6105 35.8581V35.8541Z",
    fill: "#3E9FF8"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M25.3378 6.3374L4.89771 26.9466C4.95268 27.6691 5.04692 28.3818 5.17453 29.0827C5.29626 29.7463 5.45136 30.4001 5.63591 31.0382L5.63984 31.0519L14.4924 22.7117L16.603 24.6888L25.3496 16.488L34.1806 24.7673L36.2519 22.7608L45.0299 31.0578C45.0299 31.0578 45.0338 31.044 45.0358 31.0362C45.2223 30.3903 45.3774 29.7326 45.4991 29.0611C45.6268 28.3602 45.719 27.6495 45.774 26.925L25.3378 6.3374Z",
    fill: "#3E9FF8"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_16874_47446"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "140",
    height: "51",
    fill: "white"
  }))));
}

/***/ }),

/***/ "./src/components/shared/svg/LoginIconSVG.jsx":
/*!****************************************************!*\
  !*** ./src/components/shared/svg/LoginIconSVG.jsx ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ LoginIconSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function LoginIconSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "140",
    height: "51",
    viewBox: "0 0 140 51",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_16841_45540)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M70.932 47.7194C69.4735 47.7194 68.1934 47.3781 67.0918 46.6954C66.0056 45.9971 65.16 45.0196 64.5549 43.7628C63.9498 42.506 63.6472 41.0398 63.6472 39.3641C63.6472 37.6883 63.9498 36.2298 64.5549 34.9886C65.1755 33.7318 66.0367 32.762 67.1383 32.0793C68.2555 31.3811 69.5433 31.032 71.0018 31.032C72.5844 31.032 73.9576 31.4276 75.1213 32.219C76.285 32.9948 77.1228 34.0731 77.6349 35.454L76.2151 35.9893C75.7962 34.9032 75.1445 34.0498 74.2601 33.4292C73.3757 32.8086 72.2896 32.4982 71.0018 32.4982C69.8226 32.4982 68.7908 32.7775 67.9063 33.3361C67.0375 33.8947 66.3625 34.686 65.8815 35.71C65.4005 36.7341 65.16 37.9521 65.16 39.3641C65.16 40.776 65.4005 42.0018 65.8815 43.0413C66.3625 44.0654 67.0375 44.8567 67.9063 45.4153C68.7908 45.9739 69.8226 46.2531 71.0018 46.2531C71.6069 46.2531 72.212 46.1756 72.8172 46.0204C73.4378 45.8497 74.0119 45.5627 74.5394 45.1593C75.067 44.7559 75.4859 44.205 75.7962 43.5068C76.1221 42.7931 76.285 41.8932 76.285 40.807V39.4804L76.6341 40.5045H72.1189V39.1313H77.6349V47.4867H76.285L76.0755 44.0421L76.3315 44.205C76.0677 45.0429 75.6566 45.7178 75.098 46.2299C74.5394 46.7419 73.8955 47.122 73.1663 47.3703C72.437 47.603 71.6922 47.7194 70.932 47.7194Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M87.2666 47.7194C85.4047 47.7194 83.9773 47.1996 82.9842 46.16C81.9912 45.1205 81.4947 43.6077 81.4947 41.6216V31.2647H83.0075V41.4587C83.0075 42.5138 83.1549 43.406 83.4497 44.1352C83.7445 44.849 84.2022 45.392 84.8229 45.7644C85.459 46.1213 86.2736 46.2997 87.2666 46.2997C88.2441 46.2997 89.051 46.1135 89.6871 45.7411C90.3233 45.3532 90.7965 44.8024 91.1068 44.0887C91.4172 43.3594 91.5723 42.4672 91.5723 41.4122V31.2647H93.0619V41.5053C93.0619 43.5223 92.5653 45.0662 91.5723 46.1368C90.5793 47.1919 89.1441 47.7194 87.2666 47.7194Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M95.55 47.4867L101.578 31.2647H102.858L108.863 47.4867H107.21L102.23 33.3827L97.249 47.4867H95.55ZM98.529 43.3206L99.0178 41.9475H105.418L105.93 43.3206H98.529Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M112.101 47.4867V31.2647H116.663C117.857 31.2647 118.843 31.4432 119.619 31.8C120.41 32.1569 120.999 32.6689 121.387 33.3361C121.791 34.0033 121.992 34.8101 121.992 35.7566C121.992 37.0444 121.62 38.0685 120.875 38.8288C120.131 39.589 119.052 40.0468 117.64 40.2019C117.423 40.2174 117.159 40.233 116.849 40.2485C116.554 40.2485 116.267 40.2485 115.988 40.2485H113.614V47.4867H112.101ZM121.318 47.4867L117.012 40.039L118.571 39.8295L123.063 47.4867H121.318ZM113.614 38.8986H116.5C117.322 38.8986 118.028 38.79 118.618 38.5727C119.207 38.34 119.657 37.9987 119.968 37.5487C120.293 37.0832 120.456 36.4858 120.456 35.7566C120.456 35.0273 120.293 34.4377 119.968 33.9878C119.642 33.5223 119.184 33.1809 118.594 32.9637C118.005 32.7465 117.307 32.6379 116.5 32.6379H113.614V38.8986Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M126.459 47.4867V31.2647H130.835C133.457 31.2647 135.489 31.9862 136.932 33.4292C138.391 34.8567 139.12 36.8815 139.12 39.5037C139.12 42.0794 138.399 44.0576 136.956 45.4386C135.528 46.804 133.48 47.4867 130.811 47.4867H126.459ZM127.972 46.0902H130.672C132.146 46.0902 133.395 45.8575 134.419 45.392C135.443 44.9265 136.219 44.205 136.746 43.2275C137.289 42.25 137.561 40.9932 137.561 39.4572C137.561 37.9211 137.289 36.6488 136.746 35.6402C136.219 34.6317 135.451 33.8869 134.442 33.4059C133.433 32.9094 132.223 32.6612 130.811 32.6612H127.972V46.0902Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M75.0978 11.1013C75.1098 10.4174 75.024 9.76135 74.8406 9.12527C74.035 6.33768 70.5994 6.20209 68.2704 6.82022C67.3731 7.0595 66.4021 7.45032 65.3512 7.99468C65.2097 8.06846 65.0442 8.09238 64.8906 8.07444C64.7311 8.05051 64.5835 7.97673 64.4659 7.86706C64.0671 7.48222 63.6723 6.68064 63.4948 6.24596C63.2615 5.69562 63.4709 5.24298 64.1209 4.89403C67.4708 3.12737 70.9065 2.70464 74.4278 3.62786C77.7099 4.48926 79.3191 7.31473 79.4068 10.7085C79.4507 12.4811 79.4627 14.0464 79.4367 15.3983C79.3929 17.9367 79.5484 21.5637 78.1805 22.4969C76.7807 23.6754 72.2265 23.6714 69.6263 23.5198C68.0531 23.4281 66.5775 22.9874 65.1957 22.2058C64.3104 21.7053 63.5985 21.0014 63.0442 20.0962C62.5776 19.3325 62.3443 18.4013 62.3443 17.3006C62.3264 12.8241 66.0132 11.3206 69.9713 11.2648C71.4827 11.2469 73.1357 11.2409 74.9443 11.2588C74.9882 11.2588 75.024 11.2409 75.054 11.217C75.0839 11.187 75.0978 11.1492 75.1038 11.1073L75.0978 11.1013ZM75.1277 14.4213C75.1277 14.3794 75.1158 14.3355 75.0839 14.3056C75.054 14.2757 75.0161 14.2558 74.9742 14.2558C72.8486 14.2 71.066 14.2139 69.6343 14.2917C69.2355 14.3096 68.7809 14.4253 68.2704 14.6287C67.1638 15.0693 66.6294 15.9746 66.6732 17.3445C66.7032 18.4751 67.2256 19.2707 68.2285 19.7233C69.6981 20.3833 73.2394 20.6126 74.6173 19.7991C75.1217 19.5219 75.1078 18.0424 75.1377 16.6207C75.1497 16.4871 75.1018 15.7373 75.1377 14.4213H75.1317H75.1277Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M129.79 10.683H129.83C129.85 10.683 129.862 10.683 129.876 10.6711C130.647 10.1467 131.415 9.60829 132.181 9.06393C134.109 7.69008 133.7 6.04504 133.921 3.99323C133.979 3.46283 134.304 3.18368 134.883 3.16972C136.097 3.1438 136.992 3.14978 137.57 3.18966C137.778 3.20162 137.967 3.28736 138.117 3.42894C138.266 3.57051 138.358 3.75994 138.376 3.96731C138.603 6.26039 138.195 8.89644 136.512 10.4378C135.493 11.371 134.408 12.2065 133.259 12.9243C133.24 12.9362 133.228 12.9502 133.214 12.9701C133.2 12.9901 133.2 13.008 133.2 13.028C133.2 13.0479 133.2 13.0738 133.214 13.0858C133.226 13.1057 133.24 13.1177 133.259 13.1317C134.272 13.8056 135.297 14.5494 136.344 15.3729C138.649 17.1874 138.883 19.4665 138.896 22.3558C138.896 23.1654 138.468 23.5742 137.604 23.5742C136.508 23.5742 135.728 23.5622 135.247 23.5482C135 23.5422 134.767 23.4386 134.597 23.2571C134.428 23.0816 134.33 22.8424 134.338 22.5971C134.364 20.6869 134.143 18.4656 132.546 17.311C131.598 16.6251 130.695 15.997 129.844 15.4208C129.83 15.4088 129.812 15.4008 129.792 15.4008C129.772 15.4008 129.752 15.4008 129.74 15.4208C128.889 16.003 127.993 16.6391 127.046 17.319C125.455 18.4715 125.234 20.7008 125.268 22.6111C125.268 22.8563 125.176 23.0896 125.008 23.2711C124.839 23.4465 124.606 23.5502 124.358 23.5622C123.884 23.5821 123.098 23.5941 122.001 23.5941C121.132 23.5941 120.703 23.1933 120.703 22.3837C120.709 19.4945 120.945 17.2153 123.242 15.4008C124.281 14.5773 125.307 13.8276 126.32 13.1536C126.34 13.1416 126.352 13.1277 126.366 13.1077C126.378 13.0878 126.378 13.0698 126.378 13.0499C126.378 13.03 126.378 13.004 126.366 12.9921C126.352 12.9801 126.34 12.9602 126.32 12.9462C125.172 12.2264 124.087 11.3989 123.06 10.4597C121.371 8.91837 120.957 6.28831 121.184 3.98924C121.204 3.78187 121.294 3.59444 121.443 3.45087C121.593 3.3093 121.788 3.22356 121.989 3.21159C122.568 3.17371 123.463 3.16573 124.677 3.19165C125.262 3.20362 125.581 3.47679 125.638 4.00719C125.866 6.06099 125.463 7.70603 127.391 9.07191C128.157 9.61627 128.931 10.1467 129.702 10.6711C129.714 10.6711 129.728 10.683 129.748 10.683H129.794H129.79Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M98.8665 10.4384C98.6392 6.25303 95.9294 3.75257 91.9375 3.27003C86.6215 2.63594 81.9735 5.10649 81.9077 10.8651C81.8639 14.4762 81.8519 18.1192 81.8778 27.14C81.8838 28.3783 83.2337 28.2008 84.1888 28.1769C85.3972 28.147 86.139 28.3723 86.1689 26.8409C86.2048 25.0304 86.2167 24.5299 86.2067 23.2597C86.6554 23.4511 87.2137 23.5728 87.9335 23.5588H91.3991C91.5586 23.5628 91.7181 23.5648 91.8816 23.5588C95.9832 23.4252 98.4658 20.6675 98.7968 16.6895C98.9623 14.7135 98.9862 12.6338 98.8646 10.4364L98.8665 10.4384ZM94.6234 17.5888C94.2864 18.8032 93.5626 19.5828 92.4599 19.9318C91.8019 20.1351 90.8029 20.0973 90.2107 20.0973C90.2107 20.0973 87.451 20.1651 86.7192 19.5828C86.4799 19.3934 86.3403 18.6676 86.2606 17.7783C86.2227 17.3476 86.2227 17.3117 86.2147 17.1442C86.115 15.4074 86.1848 13.3975 86.1848 13.3975C86.1928 12.5201 86.2107 11.6787 86.2406 10.8771C86.3084 8.99874 87.2157 7.17425 89.2336 6.83926C91.8637 6.40058 93.9175 7.33576 94.6413 9.37959C94.8686 10.0137 94.9902 11.0625 95.0102 12.5281C95.0281 14.1751 95.072 15.9737 94.6234 17.5908V17.5888Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M105.599 16.5075C105.599 16.4716 105.617 16.4338 105.641 16.4098C105.665 16.3799 105.703 16.368 105.739 16.368C113.232 16.3739 115.001 16.3799 115.258 16.362C116.827 16.362 118.153 14.9801 118.227 13.7339C118.325 11.6701 118.387 9.99519 117.774 8.26042C116.955 5.96535 115.324 4.42998 112.871 3.66429C111.057 3.09202 109.27 3.01226 107.517 3.42103C104.277 4.17675 102.349 6.57551 101.687 9.02811C101.494 9.74793 101.356 10.9762 101.356 12.7788C101.356 14.5814 101.506 16.4736 101.703 18.0429C102.183 20.5135 103.525 22.9162 107.703 23.4845C109.934 23.6859 113.11 23.5961 115.424 23.307C116.052 23.2213 116.636 23.0817 117.18 22.8763C117.314 22.8225 117.425 22.7308 117.505 22.6131C117.587 22.4895 117.621 22.3539 117.621 22.2083C117.647 21.6181 117.729 19.7896 117.192 19.4945C117.088 19.4307 116.993 19.4128 116.907 19.4227C116.327 19.4945 115.3 19.67 114.53 19.7876C112.171 20.0728 106.843 20.7208 105.994 18.8545C105.707 18.2802 105.565 17.684 105.589 16.4896L105.595 16.5075H105.599ZM105.617 10.9702C105.611 9.80775 106.014 8.68714 106.736 7.86561C107.452 7.04409 108.429 6.57551 109.45 6.57551H110.04C110.393 6.57551 111.625 6.64928 112.313 6.92844C112.789 7.12186 113.214 7.44488 113.575 7.85365C113.936 8.26242 114.217 8.74297 114.413 9.27935C114.608 9.80975 114.712 10.382 114.712 10.9603V11.6821C114.694 12.2324 114.508 13.1138 113.344 13.2254L105.677 13.2354C105.659 13.2354 105.647 13.2294 105.635 13.2175C105.629 13.2055 105.617 13.1756 105.617 13.1756V10.9722V10.9702Z",
    fill: "#222222"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M25.3504 0C11.3715 0 0 11.3715 0 25.3504C0 30.0427 1.28597 34.4366 3.5163 38.2101C6.46521 43.1969 11.0692 47.0941 16.5724 49.1321C19.3092 50.1451 22.266 50.7007 25.3504 50.7007C28.4347 50.7007 31.3915 50.1451 34.1284 49.1321C39.6139 47.1 44.2081 43.2225 47.157 38.2553C49.405 34.472 50.7007 30.0604 50.7007 25.3504C50.7007 11.3715 39.3292 0 25.3504 0ZM44.6105 35.8541L43.5209 34.8273L36.0819 27.8124L33.8594 29.9092L31.3562 27.5493L25.3484 21.8832L19.4251 27.4688L16.8001 29.9445L14.5403 27.8124L7.1347 34.7979L6.06077 35.8109C4.36838 32.701 3.40439 29.1376 3.40439 25.3543C3.40439 13.2544 13.2485 3.41225 25.3484 3.41225C37.4483 3.41225 47.2924 13.2563 47.2924 25.3543C47.2924 29.1572 46.3186 32.7364 44.6105 35.8581V35.8541Z",
    fill: "#3E9FF8"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M25.3377 6.3374L4.89758 26.9466C4.95256 27.6691 5.0468 28.3818 5.17441 29.0827C5.29614 29.7463 5.45124 30.4001 5.63579 31.0382L5.63972 31.0519L14.4923 22.7117L16.6029 24.6888L25.3495 16.488L34.1805 24.7673L36.2518 22.7608L45.0298 31.0578C45.0298 31.0578 45.0337 31.044 45.0357 31.0362C45.2222 30.3903 45.3773 29.7326 45.499 29.0611C45.6266 28.3602 45.7189 27.6495 45.7739 26.925L25.3377 6.3374Z",
    fill: "#3E9FF8"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_16841_45540"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "140",
    height: "51",
    fill: "white"
  }))));
}

/***/ }),

/***/ "./src/components/shared/svg/MoreDotsSVG.jsx":
/*!***************************************************!*\
  !*** ./src/components/shared/svg/MoreDotsSVG.jsx ***!
  \***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ MoreDotsSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function MoreDotsSVG(_ref) {
  var _ref$classNameNew = _ref.classNameNew,
    classNameNew = _ref$classNameNew === void 0 ? "" : _ref$classNameNew;
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    viewBox: "0 0 8 8",
    className: "icon ".concat(classNameNew)
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "1.5",
    cy: "4",
    r: "0.6",
    fill: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "4",
    cy: "4",
    r: "0.6",
    fill: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "6.5",
    cy: "4",
    r: "0.6",
    fill: "currentColor"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/NeedHelpSVG.jsx":
/*!***************************************************!*\
  !*** ./src/components/shared/svg/NeedHelpSVG.jsx ***!
  \***************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ NeedHelpSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function NeedHelpSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "30",
    height: "30",
    viewBox: "0 0 30 30",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_16995_46881)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M21.7754 6.5542C23.7084 6.55421 25.2754 8.12121 25.2754 10.0542V18.812C25.2754 20.745 23.7084 22.312 21.7754 22.312H13.293L9.51172 25.7173L8.67676 26.4692V22.312H8.25098C6.31798 22.312 4.75098 20.745 4.75098 18.812V10.0542C4.75098 8.1212 6.31798 6.5542 8.25098 6.5542H21.7754Z",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.3898 16.4797H14.2599C14.264 16.0909 14.2984 15.773 14.3632 15.526C14.432 15.2749 14.5434 15.0461 14.6973 14.8396C14.8512 14.633 15.0557 14.3981 15.3108 14.1349C15.4971 13.9446 15.6672 13.7664 15.8211 13.6003C15.979 13.4302 16.1066 13.248 16.2038 13.0536C16.301 12.8552 16.3496 12.6183 16.3496 12.3429C16.3496 12.0635 16.299 11.8225 16.1977 11.62C16.1005 11.4175 15.9547 11.2616 15.7604 11.1523C15.57 11.0429 15.3331 10.9882 15.0496 10.9882C14.8147 10.9882 14.592 11.0308 14.3814 11.1158C14.1708 11.2009 14.0007 11.3325 13.8711 11.5107C13.7416 11.6848 13.6747 11.9136 13.6707 12.1971H12.5469C12.555 11.7395 12.6684 11.3466 12.8871 11.0186C13.1098 10.6906 13.4095 10.4395 13.7861 10.2654C14.1627 10.0912 14.5839 10.0042 15.0496 10.0042C15.5639 10.0042 16.0013 10.0973 16.3617 10.2836C16.7262 10.4699 17.0036 10.7372 17.194 11.0854C17.3843 11.4297 17.4795 11.8387 17.4795 12.3125C17.4795 12.677 17.4046 13.0131 17.2547 13.3209C17.1089 13.6246 16.9206 13.9101 16.6898 14.1774C16.4589 14.4447 16.2139 14.6998 15.9547 14.9428C15.732 15.1494 15.5822 15.3822 15.5052 15.6414C15.4283 15.9006 15.3898 16.18 15.3898 16.4797ZM14.2113 18.4054C14.2113 18.2231 14.268 18.0692 14.3814 17.9437C14.4948 17.8182 14.6588 17.7554 14.8735 17.7554C15.0921 17.7554 15.2582 17.8182 15.3716 17.9437C15.485 18.0692 15.5417 18.2231 15.5417 18.4054C15.5417 18.5795 15.485 18.7294 15.3716 18.8549C15.2582 18.9804 15.0921 19.0432 14.8735 19.0432C14.6588 19.0432 14.4948 18.9804 14.3814 18.8549C14.268 18.7294 14.2113 18.5795 14.2113 18.4054Z",
    fill: "currentColor"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_16995_46881"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "30",
    height: "30",
    fill: "white"
  }))));
}

/***/ }),

/***/ "./src/components/shared/svg/PauseIconSVG.jsx":
/*!****************************************************!*\
  !*** ./src/components/shared/svg/PauseIconSVG.jsx ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function PauseIconSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "24",
    height: "24",
    viewBox: "0 0 24 24",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    x: "7.25439",
    y: "3.81494",
    width: "1.3",
    height: "16.3711",
    rx: "0.5",
    fill: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    x: "15.4453",
    y: "3.81494",
    width: "1.3",
    height: "16.3711",
    rx: "0.5",
    fill: "currentColor"
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (PauseIconSVG);

/***/ }),

/***/ "./src/components/shared/svg/PlansActiveUntilSVG.jsx":
/*!***********************************************************!*\
  !*** ./src/components/shared/svg/PlansActiveUntilSVG.jsx ***!
  \***********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ PlansActiveUntilSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function PlansActiveUntilSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "12",
    height: "12",
    viewBox: "0 0 12 12",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_17053_45604)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    x: "1.07852",
    y: "1.22329",
    width: "9.84285",
    height: "9.84285",
    rx: "1.65",
    stroke: "currentColor",
    strokeWidth: "0.7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M3.6543 0.433594V2.13893",
    stroke: "currentColor",
    strokeWidth: "0.7",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M8.33496 0.433594V2.13893",
    stroke: "currentColor",
    strokeWidth: "0.7",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M10.5742 3.72852L1.42708 3.72852",
    stroke: "currentColor",
    strokeWidth: "0.7",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M4.44238 6.84964L5.65283 8.06057L7.96853 5.74487",
    stroke: "currentColor",
    strokeWidth: "0.7",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_17053_45604"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "12",
    height: "12",
    fill: "white"
  }))));
}

/***/ }),

/***/ "./src/components/shared/svg/ProfileIconSVG.jsx":
/*!******************************************************!*\
  !*** ./src/components/shared/svg/ProfileIconSVG.jsx ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function ProfileIconSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "25",
    height: "24",
    viewBox: "0 0 25 24",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("circle", {
    cx: "12.668",
    cy: "6.35547",
    r: "4.35547",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M3.5918 20.2598C3.5918 16.4833 6.65323 13.4219 10.4297 13.4219H14.9053C18.6817 13.4219 21.7432 16.4833 21.7432 20.2598V20.2598C21.7432 21.099 21.0628 21.7793 20.2236 21.7793H5.11133C4.27211 21.7793 3.5918 21.099 3.5918 20.2598V20.2598Z",
    stroke: "currentColor"
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ProfileIconSVG);

/***/ }),

/***/ "./src/components/shared/svg/RemoveSVG.jsx":
/*!*************************************************!*\
  !*** ./src/components/shared/svg/RemoveSVG.jsx ***!
  \*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   RemoveSVG: () => (/* binding */ RemoveSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var RemoveSVG = function RemoveSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "20",
    height: "20",
    viewBox: "0 0 20 20",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.4482 6.5L14.4824 16.1494C14.4057 16.9161 13.7607 17.4999 12.9902 17.5H7.00977C6.23929 17.4999 5.59433 16.9161 5.51758 16.1494L4.55176 6.5H15.4482Z",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M4.16113 6.5H15.8389C16.1445 6.49997 16.3784 6.22807 16.333 5.92578L16.1611 4.77734C16.0509 4.04316 15.4201 3.50005 14.6777 3.5H5.32227C4.57986 3.50005 3.94906 4.04317 3.83887 4.77734L3.66699 5.92578C3.62165 6.22807 3.85548 6.49997 4.16113 6.5Z",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M7.31055 3.22168V3.22168C7.31055 2.50705 7.88987 1.92773 8.60449 1.92773H11.3937C12.1083 1.92773 12.6876 2.50705 12.6876 3.22168V3.22168",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M8 9.57788L12 13.5779",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M12 9.57788L8 13.5779",
    stroke: "currentColor"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/ReportProblemFeedbackSVG.jsx":
/*!****************************************************************!*\
  !*** ./src/components/shared/svg/ReportProblemFeedbackSVG.jsx ***!
  \****************************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ ReportProblemFeedbackSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function ReportProblemFeedbackSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    width: "167",
    height: "167",
    viewBox: "0 0 167 167",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    filter: "url(#filter0_d_19527_55909)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "162.515",
    height: "162.515",
    rx: "13.0012",
    fill: "#F7F7F7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M64.0466 32.542C64.2492 32.5836 64.4413 32.666 64.611 32.7843C64.7807 32.9025 64.9246 33.0541 65.0338 33.2298C65.1431 33.4054 65.2154 33.6015 65.2464 33.806C65.2774 34.0105 65.2664 34.2192 65.2141 34.4194C65.1618 34.6195 65.0693 34.8069 64.9423 34.9701C64.8152 35.1334 64.6562 35.269 64.475 35.3688C64.2938 35.4686 64.0942 35.5304 63.8883 35.5505C63.6824 35.5706 63.4746 35.5486 63.2775 35.4858C54.2755 33.0953 45.111 34.5918 37.5903 38.9338C30.0666 43.2777 24.1866 50.4673 21.7567 59.4586C21.6774 59.8263 21.4648 60.1516 21.16 60.3719C20.8552 60.5923 20.4796 60.692 20.1056 60.652C19.7316 60.612 19.3856 60.4351 19.1342 60.1553C18.8829 59.8754 18.7439 59.5125 18.7441 59.1364C18.7441 58.2949 18.7459 59.1364 18.7459 59.1364C18.7459 59.0066 18.7627 58.8749 18.7977 58.7436C21.4328 48.9093 27.8502 41.0476 36.0669 36.3036C44.2604 31.5731 54.2425 29.9412 64.0466 32.542ZM59.4885 49.6141C54.373 48.2651 49.1664 49.1195 44.8912 51.588C44.8614 51.6053 44.8328 51.6233 44.8048 51.6421C40.5509 54.1291 37.2323 58.216 35.8655 63.3167C35.8571 63.3483 35.8497 63.3803 35.8435 63.4124L35.8417 63.4119V63.4124C35.7696 63.8029 35.8528 64.2061 36.0736 64.5362C36.2944 64.8662 36.6354 65.097 37.0238 65.1794C37.4123 65.2617 37.8176 65.1892 38.1533 64.9771C38.489 64.7651 38.7287 64.4303 38.8213 64.0441C39.9844 59.7668 42.771 56.3429 46.3371 54.2601C46.363 54.2469 46.3889 54.2332 46.4143 54.2185C50.016 52.139 54.404 51.4197 58.7163 52.5577C58.7671 52.5734 58.8189 52.5866 58.8722 52.5973H58.8725C59.2639 52.6685 59.6676 52.5837 59.9973 52.3612C60.3271 52.1387 60.5567 51.796 60.6371 51.4064C60.7175 51.0168 60.6423 50.6112 60.4277 50.2763C60.213 49.9414 59.8761 49.7037 59.4885 49.6141ZM61.9333 41.1294C61.9054 41.1201 61.8772 41.1116 61.8488 41.104L61.8501 41.0994C54.3639 39.0935 46.7368 40.3331 40.4793 43.9457C34.224 47.557 29.3381 53.5428 27.332 61.03C27.2278 61.4198 27.2828 61.8351 27.4848 62.1844C27.6868 62.5337 28.0193 62.7885 28.4091 62.8927C28.7989 62.9968 29.2142 62.9419 29.5635 62.7399C29.9128 62.5379 30.1676 62.2054 30.2717 61.8156C32.061 55.1384 36.4206 49.799 42.0027 46.5761C47.5828 43.3546 54.3857 42.2496 61.0645 44.0391L61.0657 44.0345C61.4461 44.1337 61.8502 44.0813 62.1927 43.8885C62.5352 43.6956 62.7895 43.3774 62.902 43.0007C63.0146 42.6241 62.9765 42.2184 62.7958 41.8693C62.6152 41.5202 62.306 41.2548 61.9336 41.1291L61.9333 41.1294Z",
    fill: "#16CCFF"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M69.9238 62.4199C71.0562 48.5536 83.1386 38.182 97.0161 39.1634C110.894 40.1445 121.396 52.1131 120.566 66.0005C133.818 66.0005 144.661 76.8431 144.661 90.095C144.661 103.347 133.819 114.189 120.566 114.189H41.8918C32.2995 114.114 24.5635 106.317 24.5635 96.7239C24.5635 87.1314 32.2995 79.3342 41.8918 79.2585C39.5587 70.0097 45.611 60.3166 54.2507 58.2764C59.4791 57.0417 65.5455 58.4453 69.9238 62.4199Z",
    fill: "#46A3FF"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    fillRule: "evenodd",
    clipRule: "evenodd",
    d: "M120.567 66.0007C133.819 66.0007 144.662 76.843 144.662 90.0949C144.662 103.347 133.819 114.189 120.567 114.189H50.2561C40.664 114.114 32.9277 106.316 32.9277 96.7239C32.9277 87.1313 40.664 79.3341 50.2561 79.2584C47.5362 61.7782 67.5471 58.1776 73.9684 68.118C77.4423 36.2447 118.626 38.0431 120.567 66.0005L120.567 66.0007Z",
    fill: "#46A3FF"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    x: "63",
    y: "81.9998",
    width: "69",
    height: "52",
    rx: "5",
    fill: "#FDC72E"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M63 88.9998C63 86.2383 65.2386 83.9998 68 83.9998H127C129.761 83.9998 132 86.2383 132 88.9998V96.7647C132 98.7333 130.845 100.519 129.049 101.326L99.5491 114.579C98.2458 115.165 96.7542 115.165 95.4509 114.579L65.9509 101.326C64.1552 100.519 63 98.7333 63 96.7647V88.9998Z",
    fill: "#E0AF23"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M63 86.9998C63 84.2383 65.2386 81.9998 68 81.9998H127C129.761 81.9998 132 84.2383 132 86.9998V94.7647C132 96.7333 130.845 98.5188 129.049 99.3255L99.5491 112.579C98.2458 113.165 96.7542 113.165 95.4509 112.579L65.9509 99.3255C64.1552 98.5188 63 96.7333 63 94.7647V86.9998Z",
    fill: "#FDC72E"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("filter", {
    id: "filter0_d_19527_55909",
    x: "0",
    y: "0",
    width: "166.515",
    height: "166.515",
    filterUnits: "userSpaceOnUse",
    colorInterpolationFilters: "sRGB"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("feFlood", {
    floodOpacity: "0",
    result: "BackgroundImageFix"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("feColorMatrix", {
    "in": "SourceAlpha",
    type: "matrix",
    values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0",
    result: "hardAlpha"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("feOffset", {
    dx: "4",
    dy: "4"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("feComposite", {
    in2: "hardAlpha",
    operator: "out"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("feColorMatrix", {
    type: "matrix",
    values: "0 0 0 0 0.992157 0 0 0 0 0.780392 0 0 0 0 0.180392 0 0 0 1 0"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("feBlend", {
    mode: "normal",
    in2: "BackgroundImageFix",
    result: "effect1_dropShadow_19527_55909"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("feBlend", {
    mode: "normal",
    "in": "SourceGraphic",
    in2: "effect1_dropShadow_19527_55909",
    result: "shape"
  }))));
}

/***/ }),

/***/ "./src/components/shared/svg/ReportProblemSVG.jsx":
/*!********************************************************!*\
  !*** ./src/components/shared/svg/ReportProblemSVG.jsx ***!
  \********************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ ReportProblemSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function ReportProblemSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "30",
    height: "30",
    viewBox: "0 0 30 30",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_16995_46895)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M21.7754 6.5542C23.7084 6.55421 25.2754 8.12121 25.2754 10.0542V18.812C25.2754 20.745 23.7084 22.312 21.7754 22.312H13.293L9.51172 25.7173L8.67676 26.4692V22.312H8.25098C6.31798 22.312 4.75098 20.745 4.75098 18.812V10.0542C4.75098 8.1212 6.31798 6.5542 8.25098 6.5542H21.7754Z",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.7148 10.0051C14.2923 9.00532 15.7352 9.00519 16.3125 10.0051L19.9883 16.3723C20.5656 17.3723 19.8442 18.6223 18.6895 18.6223H11.3369C10.1824 18.6221 9.46079 17.3722 10.0381 16.3723L13.7148 10.0051Z",
    stroke: "currentColor"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.0137 12.0195V15",
    stroke: "currentColor",
    strokeLinecap: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.0137 16.5942L15.0137 16.6763",
    stroke: "currentColor",
    strokeLinecap: "round"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_16995_46895"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "30",
    height: "30",
    fill: "white"
  }))));
}

/***/ }),

/***/ "./src/components/shared/svg/RightArrowSVG.jsx":
/*!*****************************************************!*\
  !*** ./src/components/shared/svg/RightArrowSVG.jsx ***!
  \*****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ RightArrowSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function RightArrowSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "30",
    height: "30",
    viewBox: "0 0 30 30",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M12 21L18 14.9996L12 9",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/SearchSVG.jsx":
/*!*************************************************!*\
  !*** ./src/components/shared/svg/SearchSVG.jsx ***!
  \*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

function SearchSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "15",
    height: "15",
    viewBox: "0 0 15 15",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M0.68457 6.33496C0.68457 5.5293 0.835938 4.7749 1.13867 4.07178C1.44141 3.36377 1.86133 2.74121 2.39844 2.2041C2.93555 1.66699 3.55566 1.24707 4.25879 0.944336C4.9668 0.641602 5.72363 0.490234 6.5293 0.490234C7.33496 0.490234 8.08936 0.641602 8.79248 0.944336C9.50049 1.24707 10.123 1.66699 10.6602 2.2041C11.1973 2.74121 11.6172 3.36377 11.9199 4.07178C12.2227 4.7749 12.374 5.5293 12.374 6.33496C12.374 7.00391 12.2666 7.63867 12.0518 8.23926C11.8418 8.83984 11.5488 9.38428 11.1729 9.87256L14.7544 13.4761C14.8325 13.5542 14.8911 13.6445 14.9302 13.7471C14.9741 13.8496 14.9961 13.9595 14.9961 14.0767C14.9961 14.2378 14.9595 14.3843 14.8862 14.5161C14.8179 14.6479 14.7202 14.7505 14.5933 14.8237C14.4663 14.9019 14.3198 14.9409 14.1538 14.9409C14.0366 14.9409 13.9243 14.9189 13.8169 14.875C13.7144 14.8359 13.6191 14.7749 13.5312 14.6919L9.92773 11.0811C9.44922 11.4229 8.92188 11.6914 8.3457 11.8867C7.76953 12.082 7.16406 12.1797 6.5293 12.1797C5.72363 12.1797 4.9668 12.0283 4.25879 11.7256C3.55566 11.4229 2.93555 11.0029 2.39844 10.4658C1.86133 9.92871 1.44141 9.30859 1.13867 8.60547C0.835938 7.89746 0.68457 7.14062 0.68457 6.33496ZM1.93701 6.33496C1.93701 6.96973 2.0542 7.56543 2.28857 8.12207C2.52783 8.67383 2.85742 9.15967 3.27734 9.57959C3.70215 9.99951 4.19043 10.3291 4.74219 10.5684C5.29883 10.8076 5.89453 10.9272 6.5293 10.9272C7.16406 10.9272 7.75732 10.8076 8.30908 10.5684C8.86572 10.3291 9.354 9.99951 9.77393 9.57959C10.1938 9.15967 10.5234 8.67383 10.7627 8.12207C11.002 7.56543 11.1216 6.96973 11.1216 6.33496C11.1216 5.7002 11.002 5.10693 10.7627 4.55518C10.5234 3.99854 10.1938 3.51025 9.77393 3.09033C9.354 2.66553 8.86572 2.33594 8.30908 2.10156C7.75732 1.8623 7.16406 1.74268 6.5293 1.74268C5.89453 1.74268 5.29883 1.8623 4.74219 2.10156C4.19043 2.33594 3.70215 2.66553 3.27734 3.09033C2.85742 3.51025 2.52783 3.99854 2.28857 4.55518C2.0542 5.10693 1.93701 5.7002 1.93701 6.33496Z",
    fill: "currentColor"
  }));
}
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SearchSVG);

/***/ }),

/***/ "./src/components/shared/svg/SelectArrowSVG.jsx":
/*!******************************************************!*\
  !*** ./src/components/shared/svg/SelectArrowSVG.jsx ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   SelectArrowSVG: () => (/* binding */ SelectArrowSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var SelectArrowSVG = function SelectArrowSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    xmlns: "http://www.w3.org/2000/svg",
    width: "10",
    height: "6",
    viewBox: "0 0 10 6",
    fill: "none"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M1 1L5.00025 5L9 1",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/SettingsIconSVG.jsx":
/*!*******************************************************!*\
  !*** ./src/components/shared/svg/SettingsIconSVG.jsx ***!
  \*******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ SettingsIconSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function SettingsIconSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    xmlns: "http://www.w3.org/2000/svg",
    width: "28",
    height: "28",
    viewBox: "0 0 28 28",
    fill: "none"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M16.127 5.76046C16.8975 5.95937 17.6361 6.26596 18.321 6.67117L19.0133 5.9788C19.1449 5.84705 19.3013 5.74254 19.4734 5.67126C19.6455 5.59997 19.8299 5.5633 20.0162 5.56334C20.2024 5.56334 20.3867 5.60003 20.5588 5.67132C20.7308 5.7426 20.887 5.84709 21.0187 5.9788L22.0212 6.98134C22.1529 7.11295 22.2574 7.26922 22.3287 7.44124C22.3999 7.61325 22.4366 7.79764 22.4366 7.98384C22.4367 8.1701 22.4 8.35454 22.3287 8.52662C22.2574 8.6987 22.1529 8.85503 22.0212 8.98669L21.3288 9.67901C21.734 10.3639 22.0406 11.1025 22.2395 11.873H23.2168C23.9999 11.873 24.6348 12.5079 24.6348 13.291V14.709C24.6348 15.492 23.9999 16.1269 23.2168 16.1269H22.2395C22.0406 16.8974 21.734 17.636 21.3288 18.3209L22.0212 19.0132C22.1529 19.1449 22.2574 19.3012 22.3287 19.4733C22.4 19.6454 22.4367 19.8298 22.4366 20.0161C22.4366 20.2023 22.3999 20.3867 22.3287 20.5587C22.2574 20.7307 22.1529 20.887 22.0212 21.0186L21.0187 22.0211C20.8871 22.1528 20.7308 22.2573 20.5588 22.3286C20.3867 22.3999 20.2024 22.4365 20.0162 22.4365C19.8299 22.4366 19.6454 22.3999 19.4734 22.3286C19.3013 22.2573 19.1449 22.1528 19.0133 22.0211L18.321 21.3288C17.6361 21.7339 16.8975 22.0405 16.127 22.2394V23.2168C16.127 23.9999 15.4921 24.6348 14.709 24.6348H13.291C12.5079 24.6348 11.8731 23.9999 11.8731 23.2168V22.2394C11.1026 22.0405 10.364 21.7339 9.67909 21.3288L8.98677 22.0211C8.85511 22.1528 8.69878 22.2573 8.5267 22.3286C8.35462 22.3999 8.17018 22.4366 7.98392 22.4365C7.79772 22.4366 7.61333 22.3999 7.44132 22.3286C7.2693 22.2573 7.11302 22.1528 6.98142 22.0211L5.97888 21.0186C5.84717 20.887 5.74268 20.7307 5.67139 20.5587C5.6001 20.3867 5.56341 20.2023 5.56342 20.0161C5.56338 19.8298 5.60005 19.6454 5.67134 19.4733C5.74263 19.3012 5.84713 19.1449 5.97888 19.0132L6.67125 18.3209C6.26605 17.636 5.95946 16.8974 5.76054 16.1269H4.78324C4.00015 16.1269 3.36523 15.492 3.36523 14.709V13.291C3.36523 12.5079 4.00015 11.873 4.78324 11.873H5.76054C5.95946 11.1025 6.26605 10.3639 6.67125 9.67901L5.97888 8.98669C5.84713 8.85503 5.74262 8.69869 5.67133 8.52661C5.60004 8.35454 5.56337 8.1701 5.56342 7.98384C5.56341 7.79764 5.6001 7.61326 5.67139 7.44125C5.74268 7.26923 5.84717 7.11295 5.97888 6.98134L6.98142 5.9788C7.11303 5.84708 7.26931 5.74259 7.44132 5.6713C7.61334 5.60001 7.79772 5.56333 7.98392 5.56334C8.17018 5.5633 8.35462 5.59997 8.52669 5.67126C8.69877 5.74255 8.85511 5.84705 8.98677 5.9788L9.67909 6.67117C10.364 6.26596 11.1026 5.95937 11.8731 5.76046V4.78311C11.8731 4.00002 12.5079 3.36515 13.291 3.36515H14.709C15.4921 3.36515 16.127 4.00002 16.127 4.78311V5.76046Z",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M13.9998 9.84997C16.2899 9.84997 18.1491 11.7092 18.1491 13.9992C18.1491 16.2892 16.2899 18.1484 13.9998 18.1484C11.7098 18.1484 9.85059 16.2892 9.85059 13.9992C9.85059 11.7092 11.7098 9.84997 13.9998 9.84997Z",
    stroke: "currentColor",
    strokeMiterlimit: "10",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }));
}

/***/ }),

/***/ "./src/components/shared/svg/WaitSVG.jsx":
/*!***********************************************!*\
  !*** ./src/components/shared/svg/WaitSVG.jsx ***!
  \***********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   WaitSVG: () => (/* binding */ WaitSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }

var WaitSVG = function WaitSVG(props) {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", _extends({
    width: "20",
    height: "20",
    viewBox: "0 0 20 20",
    fill: "none",
    xmlns: "http://www.w3.org/2000/svg"
  }, props), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M16.4043 10C16.4043 13.537 13.537 16.4043 10 16.4043C6.463 16.4043 3.5957 13.537 3.5957 10C3.5957 6.463 6.463 3.5957 10 3.5957C11.8979 3.5957 13.6029 4.42125 14.7757 5.73284",
    stroke: "currentColor",
    strokeLinecap: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M10 6.1377V10.2412L12.7777 11.7751",
    stroke: "black",
    strokeLinecap: "round"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M15.1583 3.25395V6.13757H12.3633",
    stroke: "currentColor",
    strokeLinecap: "round",
    strokeLinejoin: "round"
  }));
};

/***/ }),

/***/ "./src/components/shared/svg/WarningIconSVG.jsx":
/*!******************************************************!*\
  !*** ./src/components/shared/svg/WarningIconSVG.jsx ***!
  \******************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ WarningIconSVG)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function WarningIconSVG() {
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("svg", {
    viewBox: "0 0 111 99",
    fill: "none",
    style: {
      width: "140px",
      height: "126px"
    }
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("g", {
    clipPath: "url(#clip0_1_2)"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M2.9957 78.074L44.7504 6.695C45.9167 4.5956 47.5496 2.9627 49.649 1.7964C51.7484 0.6301 53.8478 -0.0697005 56.1805 0.1635C58.5132 0.1635 60.8458 0.863299 62.7119 2.0297C64.8113 3.196 66.4442 4.8289 67.6105 6.9283L108.665 78.774C109.832 80.874 110.532 82.973 110.298 85.306C110.298 87.638 109.598 89.971 108.432 91.837C107.266 93.937 105.633 95.569 103.534 96.736C101.434 97.902 99.335 98.602 97.002 98.369L14.1926 97.902C11.8599 97.902 9.5272 97.202 7.6611 96.036C5.5617 94.87 3.9288 93.237 2.7625 91.137C1.5961 89.038 0.8964 86.939 0.8964 84.606C1.1296 82.273 1.8294 79.941 2.9957 78.074Z",
    fill: "url(#paint0_linear_1_2)"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M55.9473 68.7445C55.2475 68.7445 54.3144 68.9778 53.6146 69.211C52.9148 69.4443 52.215 69.9108 51.7484 70.6106C51.0486 71.0772 50.5822 71.777 50.3489 72.4768C50.1156 73.1766 49.8823 74.1096 49.8823 74.8094C49.8823 75.5092 50.1156 76.442 50.3489 77.142C50.5822 77.842 51.0486 78.542 51.7484 79.241C52.215 79.941 52.9148 80.408 53.6146 80.641C54.3144 80.874 55.2475 81.108 55.9473 81.108C57.5801 81.108 59.213 80.408 60.3793 79.241C61.5456 78.075 62.2454 76.442 62.2454 74.8094C62.2454 74.1096 62.0122 73.1766 61.7789 72.4768C61.5457 71.777 61.0791 71.0772 60.3793 70.3774C59.9128 69.9108 59.213 69.4443 58.2799 68.9778C57.5801 68.7445 56.6471 68.7445 55.9473 68.7445Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M60.3797 30.022C59.2133 29.089 57.5805 28.6224 55.9476 28.6224C54.3148 28.6224 52.9152 29.089 51.5156 30.022C51.0491 30.4886 50.5825 30.9551 50.116 31.4216C49.8827 32.1214 49.6494 32.588 49.6494 33.2878V33.521V33.9876L53.615 61.2797C53.615 61.9795 53.8482 62.446 54.3147 63.1458C54.548 63.3791 54.7813 63.3791 54.7813 63.6124C55.0146 63.6124 55.2478 63.8456 55.4811 63.6124C55.7143 63.6124 55.9476 63.6124 56.1809 63.3791C56.4142 63.3791 56.6474 63.1459 56.6474 62.9126C57.1139 62.4461 57.3472 61.7463 57.3472 61.2797L61.7793 33.9876V33.7543V33.521V33.2878C61.7793 32.588 61.546 31.8882 61.3127 31.4216C61.546 30.9551 61.0795 30.4886 60.3797 30.022Z",
    fill: "white"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("path", {
    d: "M55.7146 90.672L14.8929 90.438C9.7611 90.438 6.7286 84.84 9.2946 80.408L29.5887 47.051L50.3495 12.9941C52.9154 8.7953 58.9803 8.7953 61.5462 12.9941L82.074 47.2842L102.135 80.875C104.7 85.307 101.668 90.905 96.536 90.672H55.7146Z",
    stroke: "white",
    strokeMiterlimit: "10"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("defs", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("linearGradient", {
    id: "paint0_linear_1_2",
    x1: "55.7092",
    y1: "114.233",
    x2: "56.4547",
    y2: "-37.2475",
    gradientUnits: "userSpaceOnUse"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("stop", {
    offset: "0.0496971",
    stopColor: "#F64F64"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("stop", {
    offset: "0.1851",
    stopColor: "#F65468"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("stop", {
    offset: "0.3447",
    stopColor: "#F76275"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("stop", {
    offset: "0.5166",
    stopColor: "#F97A8A"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("stop", {
    offset: "0.6973",
    stopColor: "#FB9BA7"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("stop", {
    offset: "0.8827",
    stopColor: "#FDC5CD"
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("stop", {
    offset: "1",
    stopColor: "#FFE4E8"
  })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("clipPath", {
    id: "clip0_1_2"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("rect", {
    width: "111",
    height: "99",
    fill: "white"
  }))));
}
;

/***/ }),

/***/ "./src/context/LanguageContext.js":
/*!****************************************!*\
  !*** ./src/context/LanguageContext.js ***!
  \****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   LanguageProvider: () => (/* binding */ LanguageProvider),
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_3__);
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }




var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
var LanguageContext = /*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_0__.createContext)(undefined, undefined);
var LanguageProvider = function LanguageProvider(_ref) {
  var children = _ref.children;
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)("en"),
    _useState2 = _slicedToArray(_useState, 2),
    language = _useState2[0],
    setLanguage = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({}),
    _useState4 = _slicedToArray(_useState3, 2),
    translations = _useState4[0],
    setTranslations = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true),
    _useState6 = _slicedToArray(_useState5, 2),
    loading = _useState6[0],
    setLoading = _useState6[1];
  var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState8 = _slicedToArray(_useState7, 2),
    error = _useState8[0],
    setError = _useState8[1];
  var loadTranslations = /*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(lang) {
      var response, langTranslations, enResponse, enTranslations, _t;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.p = _context.n) {
          case 0:
            _context.p = 0;
            setLoading(true);
            setError(null);
            _context.n = 1;
            return __webpack_require__("./src/locale lazy recursive ^\\.\\/.*\\/translation\\.json$")("./".concat(lang, "/translation.json"));
          case 1:
            response = _context.v;
            langTranslations = response["default"] || {};
            if (!(lang !== "en")) {
              _context.n = 3;
              break;
            }
            _context.n = 2;
            return Promise.resolve(/*! import() */).then(__webpack_require__.t.bind(__webpack_require__, /*! ../locale/en/translation.json */ "./src/locale/en/translation.json", 19));
          case 2:
            enResponse = _context.v;
            enTranslations = enResponse["default"] || {};
            langTranslations = _objectSpread(_objectSpread({}, enTranslations), langTranslations);
          case 3:
            setTranslations(langTranslations || {});
            _context.n = 5;
            break;
          case 4:
            _context.p = 4;
            _t = _context.v;
            setError("Failed to load translations");
            setTranslations({});
          case 5:
            _context.p = 5;
            setLoading(false);
            return _context.f(5);
          case 6:
            return _context.a(2);
        }
      }, _callee, null, [[0, 4, 5, 6]]);
    }));
    return function loadTranslations(_x) {
      return _ref2.apply(this, arguments);
    };
  }();
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var initializeLanguage = /*#__PURE__*/function () {
      var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
        var generalSettings, lang, _t2;
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.p = _context2.n) {
            case 0:
              _context2.p = 0;
              _context2.n = 1;
              return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().getGeneralSettings();
            case 1:
              generalSettings = _context2.v;
              lang = generalSettings.language || "en";
              setLanguage(lang);
              _context2.n = 2;
              return loadTranslations(lang);
            case 2:
              _context2.n = 4;
              break;
            case 3:
              _context2.p = 3;
              _t2 = _context2.v;
              setError("Failed to initialize language");
              setLanguage("en");
              _context2.n = 4;
              return loadTranslations("en");
            case 4:
              return _context2.a(2);
          }
        }, _callee2, null, [[0, 3]]);
      }));
      return function initializeLanguage() {
        return _ref3.apply(this, arguments);
      };
    }();
    initializeLanguage();
  }, []);
  var changeLanguage = /*#__PURE__*/function () {
    var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(newLanguage) {
      var generalSettings, updatedSettings, _t3;
      return _regenerator().w(function (_context3) {
        while (1) switch (_context3.p = _context3.n) {
          case 0:
            _context3.p = 0;
            setLanguage(newLanguage);
            _context3.n = 1;
            return loadTranslations(newLanguage);
          case 1:
            _context3.n = 2;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().getGeneralSettings();
          case 2:
            generalSettings = _context3.v;
            updatedSettings = _objectSpread(_objectSpread({}, generalSettings), {}, {
              language: newLanguage
            });
            _context3.n = 3;
            return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().saveGeneralSettings(updatedSettings);
          case 3:
            _context3.n = 4;
            return LogsService.addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_3__.LANGUAGE_CHANGED), {
              method_send: 'changeLanguage'
            });
          case 4:
            _context3.n = 5;
            return _common_browserApi__WEBPACK_IMPORTED_MODULE_2___default().runtime.sendMessage({
              action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_3__.LANGUAGE_CHANGED,
              language: newLanguage
            });
          case 5:
            _context3.n = 7;
            break;
          case 6:
            _context3.p = 6;
            _t3 = _context3.v;
            setError("Failed to change language");
          case 7:
            return _context3.a(2);
        }
      }, _callee3, null, [[0, 6]]);
    }));
    return function changeLanguage(_x2) {
      return _ref4.apply(this, arguments);
    };
  }();
  var t = function t(key) {
    if (translations[key]) {
      return translations[key];
    }
    return key;
  };
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(LanguageContext.Provider, {
    value: {
      language: language,
      changeLanguage: changeLanguage,
      t: t,
      loading: loading,
      error: error
    }
  }, children);
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LanguageContext);

/***/ }),

/***/ "./src/entities/proxyserver.js":
/*!*************************************!*\
  !*** ./src/entities/proxyserver.js ***!
  \*************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   ProxyServer: () => (/* binding */ ProxyServer)
/* harmony export */ });
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
var config = __webpack_require__(/*! ../../config */ "./config.js");
var ProxyServer = /*#__PURE__*/function () {
  function ProxyServer(host, port, country, username, password, lat, lon, timeZone, offset) {
    _classCallCheck(this, ProxyServer);
    _defineProperty(this, "_host", '');
    _defineProperty(this, "_port", 0);
    _defineProperty(this, "_country", '');
    _defineProperty(this, "_username", undefined);
    _defineProperty(this, "_password", undefined);
    _defineProperty(this, "_lat", null);
    _defineProperty(this, "_lon", null);
    _defineProperty(this, "_timeZone", null);
    _defineProperty(this, "_offset", null);
    this.setHost(host);
    this.setPort(port);
    this.setCountry(country);
    this.setUsername(username);
    this.setPassword(password);
    this.setLat(lat);
    this.setLon(lon);
    this.setTimeZone(timeZone);
    this.setOffset(offset);
  }
  return _createClass(ProxyServer, [{
    key: "getHost",
    value: function getHost() {
      return this._host;
    }
  }, {
    key: "getPort",
    value: function getPort() {
      return this._port;
    }
  }, {
    key: "getCountry",
    value: function getCountry() {
      return this._country;
    }
  }, {
    key: "getUsername",
    value: function getUsername() {
      return this._username;
    }
  }, {
    key: "getPassword",
    value: function getPassword() {
      return this._password;
    }
  }, {
    key: "getLat",
    value: function getLat() {
      return this._lat;
    }
  }, {
    key: "getLon",
    value: function getLon() {
      return this._lon;
    }
  }, {
    key: "getTimeZone",
    value: function getTimeZone() {
      return this._timeZone;
    }
  }, {
    key: "getOffset",
    value: function getOffset() {
      return this._offset;
    }
  }, {
    key: "setHost",
    value: function setHost(host) {
      this._host = host;
    }
  }, {
    key: "setPort",
    value: function setPort(port) {
      if (Number.isInteger(port) && port > 0 && port <= 65535) {
        this._port = port;
      } else {
        throw new Error('Port must be between 1 and 65535');
      }
    }
  }, {
    key: "setCountry",
    value: function setCountry(country) {
      this._country = country;
    }
  }, {
    key: "setUsername",
    value: function setUsername(username) {
      this._username = username;
    }
  }, {
    key: "setPassword",
    value: function setPassword(password) {
      this._password = password;
    }
  }, {
    key: "setLat",
    value: function setLat(lat) {
      this._lat = lat;
    }
  }, {
    key: "setLon",
    value: function setLon(lon) {
      this._lon = lon;
    }
  }, {
    key: "setTimeZone",
    value: function setTimeZone(timeZone) {
      this._timeZone = timeZone;
    }
  }, {
    key: "setOffset",
    value: function setOffset(offset) {
      this._offset = offset;
    }
  }, {
    key: "getData",
    value: function getData() {
      var data = {
        host: this.getHost(),
        port: this.getPort(),
        country: this.getCountry(),
        username: this.getUsername(),
        password: this.getPassword()
      };
      if (config.ENABLED_LOCATION_SPOOFING) {
        data.lat = this.getLat();
        data.lon = this.getLon();
        data.timeZone = this.getTimeZone();
        data.offset = this.getOffset();
      }
      return data;
    }
  }]);
}();

/***/ }),

/***/ "./src/fonts/RobotoCondensed-Bold.ttf":
/*!********************************************!*\
  !*** ./src/fonts/RobotoCondensed-Bold.ttf ***!
  \********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
module.exports = __webpack_require__.p + "08095076af79d1e9dbfc.ttf";

/***/ }),

/***/ "./src/fonts/RobotoCondensed-Regular.ttf":
/*!***********************************************!*\
  !*** ./src/fonts/RobotoCondensed-Regular.ttf ***!
  \***********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
module.exports = __webpack_require__.p + "8975b0d93920c91f8c08.ttf";

/***/ }),

/***/ "./src/fonts/RobotoCondensed-SemiBold.ttf":
/*!************************************************!*\
  !*** ./src/fonts/RobotoCondensed-SemiBold.ttf ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

"use strict";
module.exports = __webpack_require__.p + "5fcbe47250c39b9316c5.ttf";

/***/ }),

/***/ "./src/hooks/useBorderManager.js":
/*!***************************************!*\
  !*** ./src/hooks/useBorderManager.js ***!
  \***************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   useBorderManager: () => (/* binding */ useBorderManager)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }

var useBorderManager = function useBorderManager() {
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState2 = _slicedToArray(_useState, 2),
    hoveredIndex = _useState2[0],
    setHoveredIndex = _useState2[1];
  var handleMouseEnter = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function (index) {
    setHoveredIndex(index);
  }, []);
  var handleMouseLeave = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function () {
    setHoveredIndex(null);
  }, []);
  var shouldRemoveBorder = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function (index) {
    return hoveredIndex !== null && (index === hoveredIndex || index === hoveredIndex - 1);
  }, [hoveredIndex]);
  return {
    hoveredIndex: hoveredIndex,
    handleMouseEnter: handleMouseEnter,
    handleMouseLeave: handleMouseLeave,
    shouldRemoveBorder: shouldRemoveBorder
  };
};

/***/ }),

/***/ "./src/hooks/useBrowserColorScheme.js":
/*!********************************************!*\
  !*** ./src/hooks/useBrowserColorScheme.js ***!
  \********************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ useBrowserColorScheme)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }

function useBrowserColorScheme() {
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('light'),
    _useState2 = _slicedToArray(_useState, 2),
    colorScheme = _useState2[0],
    setColorScheme = _useState2[1];
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var mediaQuery = window.matchMedia('(prefers-color-scheme: dark)');
    var handleChange = function handleChange(e) {
      setColorScheme(e.matches ? 'dark' : 'light');
    };
    handleChange(mediaQuery);
    mediaQuery.addEventListener('change', handleChange);
    return function () {
      mediaQuery.removeEventListener('change', handleChange);
    };
  }, []);
  return {
    colorScheme: colorScheme
  };
}

/***/ }),

/***/ "./src/hooks/useCountryState.js":
/*!**************************************!*\
  !*** ./src/hooks/useCountryState.js ***!
  \**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _services_CountrySelectorService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/CountrySelectorService */ "./src/common/services/CountrySelectorService.js");
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }



var useCountryState = function useCountryState() {
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]),
    _useState2 = _slicedToArray(_useState, 2),
    apiCountries = _useState2[0],
    setApiCountries = _useState2[1];
  var loadCountries = /*#__PURE__*/function () {
    var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
      var countries, sorted, _t;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.p = _context.n) {
          case 0:
            _context.p = 0;
            _context.n = 1;
            return _services_CountrySelectorService__WEBPACK_IMPORTED_MODULE_1__.CountrySelectorService.getApiCountryList();
          case 1:
            countries = _context.v;
            if (countries !== null && countries !== void 0 && countries.length) {
              _context.n = 2;
              break;
            }
            setApiCountries([]);
            return _context.a(2);
          case 2:
            sorted = _toConsumableArray(countries).sort(function (a, b) {
              return a.name.localeCompare(b.name);
            });
            setApiCountries(sorted);
            _context.n = 4;
            break;
          case 3:
            _context.p = 3;
            _t = _context.v;
            (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.LOG_LEVELS.ERROR, 'Error loading countries:', _t);
          case 4:
            return _context.a(2);
        }
      }, _callee, null, [[0, 3]]);
    }));
    return function loadCountries() {
      return _ref.apply(this, arguments);
    };
  }();
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    loadCountries();
  }, []);
  return {
    apiCountries: apiCountries,
    reloadCountries: loadCountries
  };
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useCountryState);

/***/ }),

/***/ "./src/hooks/useErrorHandler.js":
/*!**************************************!*\
  !*** ./src/hooks/useErrorHandler.js ***!
  \**************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }


var ERROR_TYPES = {
  PROXY: 'proxy',
  CONNECT: 'connect',
  GENERAL: 'general'
};
var timer;
var useErrorHandler = function useErrorHandler() {
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState2 = _slicedToArray(_useState, 2),
    proxyError = _useState2[0],
    setProxyErrorState = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState4 = _slicedToArray(_useState3, 2),
    connectError = _useState4[0],
    setConnectErrorState = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState6 = _slicedToArray(_useState5, 2),
    generalError = _useState6[0],
    setGeneralErrorState = _useState6[1];
  var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState8 = _slicedToArray(_useState7, 2),
    errorCode = _useState8[0],
    setErrorCode = _useState8[1];
  var resetErrorWithTimer = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function (setter, duration) {
    if (timer) {
      clearTimeout(timer);
    }
    timer = setTimeout(function () {
      setter(null);
    }, duration);
    return function () {
      return clearTimeout(timer);
    };
  }, []);
  var setProxyError = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function (error) {
    var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
    setProxyErrorState(error);
    _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.error_proxy', error);
    if (error && duration) {
      resetErrorWithTimer(setProxyErrorState, duration);
    }
  }, [resetErrorWithTimer]);
  var setConnectError = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function (error) {
    var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
    setConnectErrorState(error);
    _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.error_connect', error);
    if (error && duration) {
      resetErrorWithTimer(setConnectErrorState, duration);
    }
  }, [resetErrorWithTimer]);
  var setGeneralError = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function (error) {
    var duration = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 5000;
    setGeneralErrorState(error);
    _services_LogsService__WEBPACK_IMPORTED_MODULE_1__["default"].addEvents('service.error_general', error);
    if (error && duration) {
      resetErrorWithTimer(setGeneralErrorState, duration);
    }
  }, [resetErrorWithTimer]);
  var clearProxyError = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function () {
    setProxyErrorState(null);
  }, []);
  var clearConnectError = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function () {
    setConnectErrorState(null);
    setErrorCode(null);
  }, []);
  var clearGeneralError = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function () {
    setGeneralErrorState(null);
  }, []);
  var clearAllErrors = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function () {
    setProxyErrorState(null);
    setConnectErrorState(null);
    setGeneralErrorState(null);
    setErrorCode(null);
  }, []);
  var getErrorMessage = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(function () {
    if (connectError) {
      return {
        type: ERROR_TYPES.CONNECT,
        message: connectError,
        code: errorCode
      };
    }
    if (proxyError) {
      return {
        type: ERROR_TYPES.PROXY,
        message: proxyError
      };
    }
    if (generalError) {
      return {
        type: ERROR_TYPES.GENERAL,
        message: generalError
      };
    }
    return null;
  }, [connectError, proxyError, generalError]);
  return {
    proxyError: proxyError,
    connectError: connectError,
    generalError: generalError,
    setProxyError: setProxyError,
    setConnectError: setConnectError,
    setGeneralError: setGeneralError,
    clearProxyError: clearProxyError,
    clearConnectError: clearConnectError,
    clearGeneralError: clearGeneralError,
    clearAllErrors: clearAllErrors,
    getErrorMessage: getErrorMessage,
    setErrorCode: setErrorCode,
    ERROR_TYPES: ERROR_TYPES
  };
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useErrorHandler);

/***/ }),

/***/ "./src/hooks/useExtensionHeight.js":
/*!*****************************************!*\
  !*** ./src/hooks/useExtensionHeight.js ***!
  \*****************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ useExtensionHeight)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);

function useExtensionHeight(_ref) {
  var isFirefox = _ref.isFirefox,
    loggedIn = _ref.loggedIn,
    setMaxHeight = _ref.setMaxHeight;
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    if (isFirefox) {
      var adjustHeight = function adjustHeight() {
        if (loggedIn) {
          document.documentElement.style.height = "auto";
          document.body.style.height = "auto";
          requestAnimationFrame(function () {
            document.documentElement.style.height = "1000px";
            document.body.style.height = "1000px";
            requestAnimationFrame(function () {
              document.documentElement.style.height = "auto";
              document.body.style.height = "auto";
              requestAnimationFrame(function () {
                var contentHeight = document.documentElement.scrollHeight;
                document.documentElement.style.height = contentHeight + "px";
                document.body.style.height = contentHeight + "px";
              });
            });
          });
        } else {
          document.documentElement.style.height = "auto";
          document.body.style.height = "auto";
          requestAnimationFrame(function () {
            var contentHeight = document.documentElement.scrollHeight;
            document.documentElement.style.height = contentHeight + "px";
            document.body.style.height = contentHeight + "px";
          });
        }
      };
      adjustHeight();
      var timeout = setTimeout(adjustHeight, 100);
      return function () {
        return clearTimeout(timeout);
      };
    } else {
      if (!loggedIn) return;
      document.body.style.height = "1000px";
      var measureHeight = function measureHeight() {
        var availableHeight = document.body.offsetHeight;
        setMaxHeight(Math.min(availableHeight, 600));
        document.body.style.height = "";
      };
      requestAnimationFrame(measureHeight);
    }
  }, [loggedIn]);
}

/***/ }),

/***/ "./src/hooks/useTheme.js":
/*!*******************************!*\
  !*** ./src/hooks/useTheme.js ***!
  \*******************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (/* binding */ useTheme)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _useBrowserColorScheme__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./useBrowserColorScheme */ "./src/hooks/useBrowserColorScheme.js");


function useTheme(appearance) {
  var _useBrowserColorSchem = (0,_useBrowserColorScheme__WEBPACK_IMPORTED_MODULE_1__["default"])(),
    colorScheme = _useBrowserColorSchem.colorScheme;
  return (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {
    var themeMap = {
      Light: "light",
      Dark: "dark",
      System: colorScheme === 'light' ? 'light' : 'dark'
    };
    return themeMap[appearance];
  }, [appearance, colorScheme]);
}

/***/ }),

/***/ "./src/hooks/useVpnState.js":
/*!**********************************!*\
  !*** ./src/hooks/useVpnState.js ***!
  \**********************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   "default": () => (__WEBPACK_DEFAULT_EXPORT__)
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../common/services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_common_services_StorageService__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _useErrorHandler__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./useErrorHandler */ "./src/hooks/useErrorHandler.js");
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @sw/tools/utils */ "./src/sw/tools/utils.js");
/* harmony import */ var _sw_tools_utils__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__);
/* harmony import */ var _src_hooks_useCountryState__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @src/hooks/useCountryState */ "./src/hooks/useCountryState.js");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
/* harmony import */ var _services_SendMessageService__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @services/SendMessageService */ "./src/common/services/SendMessageService.js");
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }












var isFirefox = typeof browser !== 'undefined' && browser.runtime && typeof browser.runtime.getBrowserInfo === 'function';
var useVpnState = function useVpnState() {
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('Not logged in'),
    _useState2 = _slicedToArray(_useState, 2),
    status = _useState2[0],
    setStatus = _useState2[1];
  var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState4 = _slicedToArray(_useState3, 2),
    loggedIn = _useState4[0],
    setLoggedIn = _useState4[1];
  var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState6 = _slicedToArray(_useState5, 2),
    token = _useState6[0],
    setToken = _useState6[1];
  var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState8 = _slicedToArray(_useState7, 2),
    selectedCountry = _useState8[0],
    setSelectedCountry = _useState8[1];
  var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]),
    _useState0 = _slicedToArray(_useState9, 2),
    lastCountries = _useState0[0],
    setLastCountries = _useState0[1];
  var _useState1 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState10 = _slicedToArray(_useState1, 2),
    selectedCountryManual = _useState10[0],
    setManualSelectedCountry = _useState10[1];
  var _useState11 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState12 = _slicedToArray(_useState11, 2),
    cityCode = _useState12[0],
    onSelectCityCode = _useState12[1];
  var _useState13 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('home'),
    _useState14 = _slicedToArray(_useState13, 2),
    view = _useState14[0],
    setView = _useState14[1];
  var _useState15 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState16 = _slicedToArray(_useState15, 2),
    userData = _useState16[0],
    setUserData = _useState16[1];
  var _useState17 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)({
      autoConnect: false,
      killSwitch: false
    }),
    _useState18 = _slicedToArray(_useState17, 2),
    settings = _useState18[0],
    setSettings = _useState18[1];
  var _useState19 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState20 = _slicedToArray(_useState19, 2),
    currentProxy = _useState20[0],
    setCurrentProxy = _useState20[1];
  var _useState21 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)('System'),
    _useState22 = _slicedToArray(_useState21, 2),
    appearance = _useState22[0],
    setAppearance = _useState22[1];
  var _useState23 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState24 = _slicedToArray(_useState23, 2),
    locationSpoofing = _useState24[0],
    setLocationSpoofing = _useState24[1];
  var _useState25 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState26 = _slicedToArray(_useState25, 2),
    isPause = _useState26[0],
    setPause = _useState26[1];
  var _useState27 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState28 = _slicedToArray(_useState27, 2),
    pauseCountry = _useState28[0],
    setPauseCountry = _useState28[1];
  var _useState29 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState30 = _slicedToArray(_useState29, 2),
    processConnect = _useState30[0],
    setProcessConnect = _useState30[1];
  var _useState31 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(null),
    _useState32 = _slicedToArray(_useState31, 2),
    ping = _useState32[0],
    setPing = _useState32[1];
  var _useState33 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(true),
    _useState34 = _slicedToArray(_useState33, 2),
    isLoadingData = _useState34[0],
    setIsLoadingData = _useState34[1];
  var _useState35 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState36 = _slicedToArray(_useState35, 2),
    cancelStatus = _useState36[0],
    setCancelStatus = _useState36[1];
  var _useState37 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState38 = _slicedToArray(_useState37, 2),
    processConnectAfterPause = _useState38[0],
    setProcessConnectAfterPause = _useState38[1];
  var _useState39 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState40 = _slicedToArray(_useState39, 2),
    anotherExtensionActive = _useState40[0],
    setAnotherExtensionActive = _useState40[1];
  var _useState41 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState42 = _slicedToArray(_useState41, 2),
    disabledPermissionsExtension = _useState42[0],
    setDisabledPermissionsExtension = _useState42[1];
  var _useState43 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]),
    _useState44 = _slicedToArray(_useState43, 2),
    apiGateways = _useState44[0],
    setApiGateways = _useState44[1];
  var _useState45 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)([]),
    _useState46 = _slicedToArray(_useState45, 2),
    apiGatewayMain = _useState46[0],
    setApiGatewayMain = _useState46[1];
  var _useState47 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(''),
    _useState48 = _slicedToArray(_useState47, 2),
    subMenu = _useState48[0],
    setSubMenu = _useState48[1];
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_1__["default"]),
    t = _useContext.t;
  var _useState49 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState50 = _slicedToArray(_useState49, 2),
    processDisconnect = _useState50[0],
    setProcessDisconnect = _useState50[1];
  var _useState51 = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false),
    _useState52 = _slicedToArray(_useState51, 2),
    cancelDisconnect = _useState52[0],
    setCancelDisconnect = _useState52[1];
  var _useCountryState = (0,_src_hooks_useCountryState__WEBPACK_IMPORTED_MODULE_8__["default"])(),
    apiCountries = _useCountryState.apiCountries,
    reloadCountries = _useCountryState.reloadCountries;
  var prevValues = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)({
    cityCode: ''
  });
  var isSubscriptionCheck = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)(false);
  var _useErrorHandler = (0,_useErrorHandler__WEBPACK_IMPORTED_MODULE_5__["default"])(),
    proxyError = _useErrorHandler.proxyError,
    connectError = _useErrorHandler.connectError,
    generalError = _useErrorHandler.generalError,
    setProxyError = _useErrorHandler.setProxyError,
    setConnectError = _useErrorHandler.setConnectError,
    setGeneralError = _useErrorHandler.setGeneralError,
    clearProxyError = _useErrorHandler.clearProxyError,
    clearConnectError = _useErrorHandler.clearConnectError,
    clearGeneralError = _useErrorHandler.clearGeneralError,
    clearAllErrors = _useErrorHandler.clearAllErrors,
    getErrorMessage = _useErrorHandler.getErrorMessage,
    setErrorCode = _useErrorHandler.setErrorCode,
    ERROR_TYPES = _useErrorHandler.ERROR_TYPES;
  var connectSelectIpByStatus = /*#__PURE__*/function () {
    var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(server) {
      var response, _t;
      return _regenerator().w(function (_context) {
        while (1) switch (_context.p = _context.n) {
          case 0:
            setProcessConnect(true);
            _context.p = 1;
            _context.n = 2;
            return new Promise(function (resolve, reject) {
              _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat((_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2___default().CONNECT_BY_SELECTED_SERVER)));
              _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
                action: (_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2___default().CONNECT_BY_SELECTED_SERVER),
                server: server,
                locationSpoofing: locationSpoofing,
                isPause: isPause
              }, function (message) {
                if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime).lastError) {
                  setProcessConnect(false);
                  setManualSelectedCountry('');
                  setCancelStatus(false);
                  _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('service.error_connect_select_ip', server);
                  reject((_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime).lastError);
                } else {
                  setProcessConnect(false);
                  setManualSelectedCountry('');
                  setCancelStatus(false);
                  if (message || _typeof(message) == 'object') {
                    if (message.success && _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().isFireFoxBrowser()) {
                      setStatus(_sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.CONNECT);
                    }
                    if (message.error) {
                      setConnectError(message.error, 3000);
                    }
                  }
                  resolve(response);
                }
              });
            });
          case 2:
            response = _context.v;
            _context.n = 4;
            break;
          case 3:
            _context.p = 3;
            _t = _context.v;
            setProcessConnect(false);
            setManualSelectedCountry('');
            setCancelStatus(false);
            _context.n = 4;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('service.error_connect_select_ip', server);
          case 4:
            return _context.a(2);
        }
      }, _callee, null, [[1, 3]]);
    }));
    return function connectSelectIpByStatus(_x) {
      return _ref.apply(this, arguments);
    };
  }();
  var connectRandomIp = /*#__PURE__*/function () {
    var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.n) {
          case 0:
            _context2.n = 1;
            return checkAndConnect(null, true);
          case 1:
            return _context2.a(2, _context2.v);
        }
      }, _callee2);
    }));
    return function connectRandomIp() {
      return _ref2.apply(this, arguments);
    };
  }();
  var disconnect = function disconnect() {
    try {
      _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.DISCONNECT), {
        method_send: 'disconnect'
      });
      _services_SendMessageService__WEBPACK_IMPORTED_MODULE_11__["default"].sendMessage(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.DISCONNECT, {
        manual_disconnect: true
      }).then(function (result) {
        setProcessConnect(false);
        setManualSelectedCountry('');
      })["catch"](function (err) {
        return setGeneralError(err.message);
      });
    } catch (_unused) {
      setManualSelectedCountry('');
      setProcessConnect(false);
      _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('service.error_disconnect');
    }
  };
  var autoDisconnect = /*#__PURE__*/function () {
    var _ref3 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
      var newSettings, settings, updatedSettings;
      return _regenerator().w(function (_context3) {
        while (1) switch (_context3.n) {
          case 0:
            newSettings = {
              autoConnect: false
            };
            _context3.n = 1;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSettings();
          case 1:
            settings = _context3.v;
            updatedSettings = _objectSpread(_objectSpread({}, settings), newSettings);
            _context3.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveSettings(updatedSettings);
          case 2:
            if (!isPause) {
              _context3.n = 5;
              break;
            }
            _context3.n = 3;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.DELETE_PAUSE), {
              method_send: 'autoDisconnect'
            });
          case 3:
            _context3.n = 4;
            return _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
              action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.DELETE_PAUSE
            });
          case 4:
            setPause(false);
          case 5:
            disconnect();
          case 6:
            return _context3.a(2);
        }
      }, _callee3);
    }));
    return function autoDisconnect() {
      return _ref3.apply(this, arguments);
    };
  }();
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    if (!_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().isFireFoxBrowser()) return;
    var handleFirefoxMessage = /*#__PURE__*/function () {
      var _ref4 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(message) {
        var _currentProxy, proxyStatus, _processDisconnect, updatedLastCountries;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              if (!(message.type === _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.USER_DATA_UPDATED)) {
                _context4.n = 2;
                break;
              }
              _context4.n = 1;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.USER_DATA_UPDATED), {
                method_send: 'handleFirefoxMessage'
              });
            case 1:
              setUserData(function (prev) {
                return _objectSpread(_objectSpread({}, prev), message.payload);
              });
              setManualSelectedCountry('');
              setProcessConnect(false);
            case 2:
              if (!(message.type === _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.PROXY_STATUS_UPDATED)) {
                _context4.n = 5;
                break;
              }
              _context4.n = 3;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getCurrentProxy();
            case 3:
              _currentProxy = _context4.v;
              _context4.n = 4;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getProxyStatus();
            case 4:
              proxyStatus = _context4.v;
              if (proxyStatus) {
                setStatus(proxyStatus);
              }
              if (_currentProxy && _currentProxy.country) {
                setSelectedCountry(_currentProxy.country);
              }
            case 5:
              if (!(message.type === _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.PROCESS_DISCONNECT_UPDATED)) {
                _context4.n = 7;
                break;
              }
              setProcessConnect(false);
              _context4.n = 6;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getProcessDisconnect();
            case 6:
              _processDisconnect = _context4.v;
              setProcessDisconnect(_processDisconnect);
            case 7:
              if (!(message.type === _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.UPDATE_LAST_COUNTRIES)) {
                _context4.n = 9;
                break;
              }
              _context4.n = 8;
              return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getLastCountries();
            case 8:
              updatedLastCountries = _context4.v;
              setLastCountries(updatedLastCountries);
            case 9:
              return _context4.a(2);
          }
        }, _callee4);
      }));
      return function handleFirefoxMessage(_x2) {
        return _ref4.apply(this, arguments);
      };
    }();
    _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.onMessage.addListener(handleFirefoxMessage);
    return function () {
      return _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.onMessage.removeListener(handleFirefoxMessage);
    };
  }, []);
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    var initializeState = /*#__PURE__*/function () {
      var _ref5 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
        var _yield$Promise$all, _yield$Promise$all2, authData, generalSettings, connectionSettings, securitySettings, cityCode, pauseSetting, currentProxy, ping, loadConnectStatus, lastCountries, anotherExtension, disabledPermissionsExtension, apiGateways, apiGatewayMain, cancelDisconnect, processDisconnect, loadedSettings;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.n) {
            case 0:
              _context5.n = 1;
              return Promise.all([_common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getAuthData(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getGeneralSettings(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSettings(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSecuritySettings(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSelectedCity(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getPauseSetting(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getCurrentProxy(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getPing(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getLoadConnectStatus(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getLastCountries(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getAnotherExtension(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getDisabledPermissionsExtension(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getApiGateways(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getApiGatewayMain(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getCancelDisconnect(), _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getProcessDisconnect()]);
            case 1:
              _yield$Promise$all = _context5.v;
              _yield$Promise$all2 = _slicedToArray(_yield$Promise$all, 16);
              authData = _yield$Promise$all2[0];
              generalSettings = _yield$Promise$all2[1];
              connectionSettings = _yield$Promise$all2[2];
              securitySettings = _yield$Promise$all2[3];
              cityCode = _yield$Promise$all2[4];
              pauseSetting = _yield$Promise$all2[5];
              currentProxy = _yield$Promise$all2[6];
              ping = _yield$Promise$all2[7];
              loadConnectStatus = _yield$Promise$all2[8];
              lastCountries = _yield$Promise$all2[9];
              anotherExtension = _yield$Promise$all2[10];
              disabledPermissionsExtension = _yield$Promise$all2[11];
              apiGateways = _yield$Promise$all2[12];
              apiGatewayMain = _yield$Promise$all2[13];
              cancelDisconnect = _yield$Promise$all2[14];
              processDisconnect = _yield$Promise$all2[15];
              loadedSettings = connectionSettings || {
                autoConnect: false,
                killSwitch: false
              };
              if (ping) {
                setPing(ping);
              }
              if (loadConnectStatus) {
                setProcessConnect(loadConnectStatus);
              }
              if (connectionSettings) {
                setSettings(loadedSettings);
              }
              if (authData.jwt) {
                setToken(authData.jwt);
              }
              if (authData.loggedIn) {
                setLoggedIn(authData.loggedIn || false);
              }
              if (authData.proxyStatus) {
                setStatus(authData.proxyStatus || _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.DISCONNECT);
              }
              if (authData.userData) {
                setUserData(authData.userData || null);
              }
              if (currentProxy && Object.keys(currentProxy).length !== 0) {
                setCurrentProxy(currentProxy);
              }
              if (securitySettings !== null && securitySettings !== void 0 && securitySettings.locationSpoofing) {
                setLocationSpoofing((securitySettings === null || securitySettings === void 0 ? void 0 : securitySettings.locationSpoofing) || false);
              }
              if (currentProxy && currentProxy.country) {
                setSelectedCountry(currentProxy.country);
              }
              if (lastCountries) {
                setLastCountries(lastCountries || []);
              }
              if (currentProxy && cityCode) {
                onSelectCityCode(cityCode);
              }
              if (anotherExtension) {
                setAnotherExtensionActive(anotherExtension);
              }
              if (cancelDisconnect) {
                setCancelDisconnect(cancelDisconnect);
              }
              if (processDisconnect) {
                setProcessDisconnect(processDisconnect);
              }
              if (disabledPermissionsExtension) {
                setDisabledPermissionsExtension(disabledPermissionsExtension);
              }
              if (apiGateways) {
                setApiGateways(apiGateways);
              }
              if (apiGatewayMain) {
                setApiGatewayMain(apiGatewayMain);
              }
              setAppearance(generalSettings.appearance || 'System');
              if (!(!authData.loggedIn || !authData.jwt)) {
                _context5.n = 3;
                break;
              }
              _context5.n = 2;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.DISABLE_KILL_SWITCH), {
                method_send: 'initializeState'
              });
            case 2:
              _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
                action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.DISABLE_KILL_SWITCH
              }, function (response) {});
            case 3:
              if (!(authData.loggedIn && authData.jwt && loadedSettings.killSwitch && authData.proxyStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.DISCONNECT)) {
                _context5.n = 5;
                break;
              }
              _context5.n = 4;
              return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.ENABLE_FIRST_LOAD_KILL_SWITCH), {
                method_send: 'initializeState'
              });
            case 4:
              _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
                action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.ENABLE_FIRST_LOAD_KILL_SWITCH
              }, function (response) {});
            case 5:
              if (pauseSetting && pauseSetting.pause) {
                setPause(pauseSetting.pause);
                setPauseCountry(pauseSetting.pauseProxy.country);
              }
              if (authData.loggedIn && !isSubscriptionCheck.current) {
                isSubscriptionCheck.current = true;
                _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
                  action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.UPDATE_SUBSCRIPTION_ONCE
                });
              }
              setIsLoadingData(false);
              _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.initialize_state', {
                loggedIn: authData.loggedIn,
                appearance: generalSettings.appearance || 'System',
                proxyStatus: authData.proxyStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.DISCONNECT
              });
            case 6:
              return _context5.a(2);
          }
        }, _callee5);
      }));
      return function initializeState() {
        return _ref5.apply(this, arguments);
      };
    }();
    initializeState()["catch"](function (err) {
      setIsLoadingData(false);
      setGeneralError("Initialization failed: ".concat(err.message));
    });
    var handleStorageChange = function handleStorageChange(changes, area) {
      var _changes$currentProxy, _changes$currentProxy2, _changes$securitySett, _changes$cancelConnec;
      _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getPing().then(function (ping) {
        setPing(ping);
      });
      if (area === 'local' && changes.proxyStatus) {
        var newStatus = changes.proxyStatus.newValue;
        setStatus(newStatus);
        _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSecuritySettings().then(function (securitySettings) {
          var threatProtectionEnabled = (securitySettings === null || securitySettings === void 0 ? void 0 : securitySettings.threatProtection) || false;
          if (threatProtectionEnabled) {
            _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.SET_THREAT_PROTECTION), {
              method_send: 'handleStorageChange'
            });
            if (newStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.CONNECT) {
              (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.LOG_LEVELS.INFO, 'SET_THREAT_PROTECTION', newStatus === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.CONNECT);
              _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
                action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.SET_THREAT_PROTECTION,
                enabled: true
              }, function (response) {
                if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime).lastError || !response || !response.success) {
                  setGeneralError('Failed to enable Threat Protection');
                }
              });
            } else {
              (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.LOG_LEVELS.INFO, 'SET_THREAT_PROTECTION', newStatus);
              _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
                action: _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2__.SET_THREAT_PROTECTION,
                enabled: false,
                dontUpdateStorage: true
              }, function (response) {
                if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime).lastError || !response || !response.success) {
                  (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_6__.LOG_LEVELS.ERROR, 'Failed to disable Threat Protection');
                  _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('service.error_disable_threat_protection', {}, 'Failed to disable Threat Protection');
                }
              });
            }
          }
        });
      }
      if ('loadConnectStatus' in changes) {
        setProcessConnect(changes.loadConnectStatus.newValue);
        setProcessConnectAfterPause(false);
        setPause(false);
        if (!changes.loadConnectStatus.newValue) {
          setManualSelectedCountry('');
        }
      }
      if ('forceCancelConnect' in changes) {
        if (changes.forceCancelConnect.newValue) {
          _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getLoadConnectStatus().then(function (loadConnectStatus) {
            setProcessConnect(loadConnectStatus);
            setProcessConnectAfterPause(false);
            setPause(false);
            setManualSelectedCountry('');
          });
        }
      }
      if ('anotherExtensionActive' in changes) {
        setAnotherExtensionActive(changes.anotherExtensionActive.newValue);
      }
      if ('processDisconnect' in changes) {
        setProcessDisconnect(changes.processDisconnect.newValue);
        setCancelStatus(false);
        setProcessConnect(false);
      }
      if ('cancelConnect' in changes) {
        setCancelStatus(changes.cancelConnect.newValue);
      }
      if ('disabledPermissionsExtension' in changes) {
        setDisabledPermissionsExtension(changes.disabledPermissionsExtension.newValue);
      }
      if ('selectedCity' in changes) {
        onSelectCityCode(changes.selectedCity.newValue);
      }
      if (changes.settings) setSettings(changes.settings.newValue);
      var newProxy = ((_changes$currentProxy = changes.currentProxy) === null || _changes$currentProxy === void 0 ? void 0 : _changes$currentProxy.newValue) || null;
      var oldProxy = ((_changes$currentProxy2 = changes.currentProxy) === null || _changes$currentProxy2 === void 0 ? void 0 : _changes$currentProxy2.oldValue) || null;
      var hasProxyChanged = oldProxy && newProxy && (oldProxy.country !== newProxy.country || oldProxy.host !== newProxy.host || oldProxy.port !== newProxy.port) || oldProxy && !newProxy || !oldProxy && newProxy;
      if (hasProxyChanged) {
        setCurrentProxy(newProxy);
        if (newProxy && newProxy.country || oldProxy && oldProxy.country && !newProxy) {
          setSelectedCountry(newProxy && newProxy.country ? newProxy.country : '');
        }
      }
      if (changes.loggedIn) {
        setLoggedIn(changes.loggedIn.newValue);
        if (!changes.loggedIn.newValue) {
          setToken('');
          setStatus('Not logged in');
          setUserData(null);
          setCurrentProxy(null);
          setSelectedCountry(null);
        }
        _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('extension.change_login', {
          newValue: changes.loggedIn.newValue,
          oldValue: changes.loggedIn.oldValue
        });
      }
      if (changes.jwt) setToken(changes.jwt.newValue || '');
      if (changes.proxyError) {
        setProxyError(changes.proxyError.newValue || null);
      }
      if (changes.userData) {
        var new_user_data = changes.userData.newValue;
        setUserData(function (prev) {
          return _objectSpread(_objectSpread({}, prev), new_user_data);
        });
      }
      if (changes.generalSettings) {
        var newGeneralSettings = changes.generalSettings.newValue || {};
        setAppearance(newGeneralSettings.appearance || 'System');
      }
      if (changes.securitySettings) setLocationSpoofing(((_changes$securitySett = changes.securitySettings.newValue) === null || _changes$securitySett === void 0 ? void 0 : _changes$securitySett.locationSpoofing) || false);
      if (changes.lastCountries) setLastCountries(changes.lastCountries.newValue || []);
      if (changes.pauseSetting && changes.pauseSetting.newValue) {
        var _changes$pauseSetting;
        setPause(changes.pauseSetting.newValue.pause);
        setPauseCountry((_changes$pauseSetting = changes.pauseSetting) === null || _changes$pauseSetting === void 0 || (_changes$pauseSetting = _changes$pauseSetting.newValue.pauseProxy) === null || _changes$pauseSetting === void 0 ? void 0 : _changes$pauseSetting.country);
      }
      if ((changes === null || changes === void 0 || (_changes$cancelConnec = changes.cancelConnect) === null || _changes$cancelConnec === void 0 ? void 0 : _changes$cancelConnec.newValue) === false) {
        setCancelStatus(false);
      }
      if (changes !== null && changes !== void 0 && changes.apiCities) {
        reloadCountries();
      }
    };
    _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().storage.onChanged.addListener(handleStorageChange);
    return function () {
      return _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().storage.onChanged.removeListener(handleStorageChange);
    };
  }, []);
  var cancelConnect = /*#__PURE__*/function () {
    var _ref6 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() {
      return _regenerator().w(function (_context6) {
        while (1) switch (_context6.n) {
          case 0:
            setCancelStatus(true);
            setProcessConnectAfterPause(false);
            _context6.n = 1;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveCancelConnect(true);
          case 1:
            _context6.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveSettings(_objectSpread(_objectSpread({}, settings), {}, {
              autoConnect: false
            }));
          case 2:
            return _context6.a(2);
        }
      }, _callee6);
    }));
    return function cancelConnect() {
      return _ref6.apply(this, arguments);
    };
  }();
  var checkAndConnect = /*#__PURE__*/function () {
    var _ref7 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
      var country,
        isRandomCountry,
        authData,
        check_token,
        newCountry,
        lastSelectedCountry,
        lastSelectedCity,
        response,
        _userData$subscriptio,
        _userData$subscriptio2,
        _updatedUserData$subs,
        updatedUserData,
        subscriptionTrialStatus,
        trialPeriodUntil,
        isTrial,
        isSubscribed,
        _args7 = arguments,
        _t2;
      return _regenerator().w(function (_context7) {
        while (1) switch (_context7.p = _context7.n) {
          case 0:
            country = _args7.length > 0 && _args7[0] !== undefined ? _args7[0] : null;
            isRandomCountry = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : false;
            _context7.p = 1;
            _context7.n = 2;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getAuthData();
          case 2:
            authData = _context7.v;
            check_token = isFirefox ? authData.jwt : token;
            newCountry = !isRandomCountry ? country ? country : selectedCountry : "";
            if (!(!loggedIn || !newCountry && !isRandomCountry)) {
              _context7.n = 3;
              break;
            }
            return _context7.a(2);
          case 3:
            _context7.n = 4;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSelectedCountry();
          case 4:
            lastSelectedCountry = _context7.v;
            _context7.n = 5;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getSelectedCity();
          case 5:
            lastSelectedCity = _context7.v;
            if (!(!isPause && !isRandomCountry && lastSelectedCountry && lastSelectedCountry === newCountry && newCountry && cityCode === lastSelectedCity)) {
              _context7.n = 6;
              break;
            }
            return _context7.a(2);
          case 6:
            if (!processConnect) {
              _context7.n = 7;
              break;
            }
            return _context7.a(2);
          case 7:
            setProcessConnect(true);
            _context7.n = 8;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().saveSelectedCity(cityCode);
          case 8:
            if (isPause) {
              setProcessConnectAfterPause(true);
            }
            _context7.n = 9;
            return new Promise(function (resolve, reject) {
              _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents("action.send.".concat((_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2___default().CONNECT)), {
                method_send: 'checkAndConnect'
              });
              _common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime.sendMessage({
                action: (_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_2___default().CONNECT),
                country: newCountry,
                loggedIn: loggedIn,
                token: check_token,
                isPause: isPause
              }, function (response) {
                if ((_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime).lastError) {
                  (0,_sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__.updateIcon)(false);
                  reject((_common_browserApi__WEBPACK_IMPORTED_MODULE_4___default().runtime).lastError);
                } else {
                  resolve(response);
                }
              });
            });
          case 9:
            response = _context7.v;
            if (!(response !== null && response !== void 0 && response.success)) {
              _context7.n = 11;
              break;
            }
            _context7.n = 10;
            return _common_services_StorageService__WEBPACK_IMPORTED_MODULE_3___default().getUserData();
          case 10:
            updatedUserData = _context7.v;
            subscriptionTrialStatus = (userData === null || userData === void 0 || (_userData$subscriptio = userData.subscription_info) === null || _userData$subscriptio === void 0 ? void 0 : _userData$subscriptio.status) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.SUBSCRIPTION_STATUSES.TRIAL;
            trialPeriodUntil = userData === null || userData === void 0 || (_userData$subscriptio2 = userData.subscription_info) === null || _userData$subscriptio2 === void 0 ? void 0 : _userData$subscriptio2.trial_period_until;
            isTrial = subscriptionTrialStatus && trialPeriodUntil < new Date();
            isSubscribed = (updatedUserData === null || updatedUserData === void 0 ? void 0 : updatedUserData.has_active_subscription) && (updatedUserData === null || updatedUserData === void 0 || (_updatedUserData$subs = updatedUserData.subscription_info) === null || _updatedUserData$subs === void 0 ? void 0 : _updatedUserData$subs.subscription_exp_date) || isTrial;
            setProcessConnect(false);
            (0,_sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__.updateIcon)(isSubscribed);
            setManualSelectedCountry('');
            setCancelStatus(false);
          case 11:
            if (!response.success && response.error) {
              setProcessConnectAfterPause(false);
              if (!response.disable_clear_state) {
                setConnectError(t(response.error), 3000);
                setErrorCode(response.code);
                (0,_sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__.updateIcon)(false);
                setProcessConnect(false);
                setCancelStatus(false);
                setSelectedCountry('');
                setManualSelectedCountry('');
              }
            } else if (!response.success && response.manualDisconnect) {
              setCancelStatus(false);
              setManualSelectedCountry('');
              if (!response.safeState) {
                (0,_sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__.updateIcon)(false);
                setSelectedCountry('');
                setProcessConnectAfterPause(false);
              }
              setProcessDisconnect(false);
              setProcessConnect(false);
            } else if (!response.success && !response.disable_clear_state) {
              setProcessConnect(false);
              (0,_sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__.updateIcon)(false);
              !response.isCanceled ? setConnectError(t("invalid_connect"), 3000) : '';
              setCancelStatus(false);
              setSelectedCountry('');
              setManualSelectedCountry('');
              setProcessConnectAfterPause(false);
            }
            if (!response) {
              setPause(false);
              setPauseCountry('');
              (0,_sw_tools_utils__WEBPACK_IMPORTED_MODULE_7__.updateIcon)(false);
              setConnectError(t("invalid_connect"), 3000);
              setProcessConnect(false);
              setCancelStatus(false);
              setManualSelectedCountry('');
              setProcessConnectAfterPause(false);
            }
            _context7.n = 13;
            break;
          case 12:
            _context7.p = 12;
            _t2 = _context7.v;
            if (!_t2.disable_clear_state) {
              setConnectError(t('connection_failed'));
              setProcessConnect(false);
              setConnectError(t("invalid_connect"), 3000);
              setSelectedCountry('');
              setManualSelectedCountry('');
            }
            setPause(false);
            setPauseCountry('');
            setCancelStatus(false);
            setProcessConnectAfterPause(false);
            _context7.n = 13;
            return _services_LogsService__WEBPACK_IMPORTED_MODULE_9__["default"].addEvents('service.error_check_and_connect', _t2);
          case 13:
            return _context7.a(2);
        }
      }, _callee7, null, [[1, 12]]);
    }));
    return function checkAndConnect() {
      return _ref7.apply(this, arguments);
    };
  }();
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
    if (!selectedCountryManual) {
      return;
    }
    if (selectedCountryManual && prevValues.current.cityCode !== cityCode && !cityCode) {
      var code = cityCode ? cityCode : '';
      prevValues.current = {
        cityCode: code
      };
      return;
    }
    prevValues.current = {
      cityCode: cityCode
    };
    checkAndConnect()["catch"](function (err) {
      setConnectError("Connection failed: ".concat(err.message));
      setProcessConnect(false);
      setManualSelectedCountry('');
    });
  }, [selectedCountryManual, cityCode, selectedCountry]);
  var isConnected = status === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.CONNECT;
  var isBlockConnect = status === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_10__.PROXY_STATUSES.BLOCK_CONNECT;
  return {
    status: status,
    loggedIn: loggedIn,
    token: token,
    proxyError: proxyError,
    connectError: connectError,
    generalError: generalError,
    clearProxyError: clearProxyError,
    clearConnectError: clearConnectError,
    clearGeneralError: clearGeneralError,
    clearAllErrors: clearAllErrors,
    getErrorMessage: getErrorMessage,
    ERROR_TYPES: ERROR_TYPES,
    selectedCountry: selectedCountry,
    setSelectedCountry: setSelectedCountry,
    lastCountries: lastCountries,
    view: view,
    setView: setView,
    userData: userData,
    settings: settings,
    currentProxy: currentProxy,
    appearance: appearance,
    setAppearance: setAppearance,
    locationSpoofing: locationSpoofing,
    isPause: isPause,
    setPause: setPause,
    t: t,
    connectRandomIp: connectRandomIp,
    connectSelectIpByStatus: connectSelectIpByStatus,
    disconnect: disconnect,
    isConnected: isConnected,
    isBlockConnect: isBlockConnect,
    autoDisconnect: autoDisconnect,
    processConnect: processConnect,
    setProcessConnect: setProcessConnect,
    setConnectError: setConnectError,
    onSelectCityCode: onSelectCityCode,
    cityCode: cityCode,
    checkAndConnect: checkAndConnect,
    setManualSelectedCountry: setManualSelectedCountry,
    ping: ping,
    pauseCountry: pauseCountry,
    isLoadingData: isLoadingData,
    apiCountries: apiCountries,
    setPauseCountry: setPauseCountry,
    cancelConnect: cancelConnect,
    cancelStatus: cancelStatus,
    processConnectAfterPause: processConnectAfterPause,
    anotherExtensionActive: anotherExtensionActive,
    disabledPermissionsExtension: disabledPermissionsExtension,
    apiGateways: apiGateways,
    apiGatewayMain: apiGatewayMain,
    setSubMenu: setSubMenu,
    subMenu: subMenu,
    processDisconnect: processDisconnect,
    cancelDisconnect: cancelDisconnect
  };
};
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useVpnState);

/***/ }),

/***/ "./src/locale lazy recursive ^\\.\\/.*\\/translation\\.json$":
/*!***********************************************************************!*\
  !*** ./src/locale/ lazy ^\.\/.*\/translation\.json$ namespace object ***!
  \***********************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var map = {
	"./de/translation.json": "./src/locale/de/translation.json",
	"./en/translation.json": "./src/locale/en/translation.json"
};

function webpackAsyncContext(req) {
	return Promise.resolve().then(() => {
		if(!__webpack_require__.o(map, req)) {
			var e = new Error("Cannot find module '" + req + "'");
			e.code = 'MODULE_NOT_FOUND';
			throw e;
		}

		var id = map[req];
		return __webpack_require__.t(id, 3 | 16);
	});
}
webpackAsyncContext.keys = () => (Object.keys(map));
webpackAsyncContext.id = "./src/locale lazy recursive ^\\.\\/.*\\/translation\\.json$";
module.exports = webpackAsyncContext;

/***/ }),

/***/ "./src/locale sync recursive ^\\.\\/.*\\/translation\\.json$":
/*!******************************************************!*\
  !*** ./src/locale/ sync ^\.\/.*\/translation\.json$ ***!
  \******************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var map = {
	"./de/translation.json": "./src/locale/de/translation.json",
	"./en/translation.json": "./src/locale/en/translation.json"
};


function webpackContext(req) {
	var id = webpackContextResolve(req);
	return __webpack_require__(id);
}
function webpackContextResolve(req) {
	if(!__webpack_require__.o(map, req)) {
		var e = new Error("Cannot find module '" + req + "'");
		e.code = 'MODULE_NOT_FOUND';
		throw e;
	}
	return map[req];
}
webpackContext.keys = function webpackContextKeys() {
	return Object.keys(map);
};
webpackContext.resolve = webpackContextResolve;
module.exports = webpackContext;
webpackContext.id = "./src/locale sync recursive ^\\.\\/.*\\/translation\\.json$";

/***/ }),

/***/ "./src/locale/de/translation.json":
/*!****************************************!*\
  !*** ./src/locale/de/translation.json ***!
  \****************************************/
/***/ ((module) => {

"use strict";
module.exports = /*#__PURE__*/JSON.parse('{"setting":"Einstellungen","setting_general":"Allgemein","setting_general_description":"Wählen Sie Erweiterungseinstellungen oder melden Sie sich ab.","setting_connection":"Verbindung","setting_connection_description":"Verwalten Sie Ihre VPN-Verbindung.","setting_security":"Sicherheit und Datenschutz","setting_security_description":"Richten Sie sichere Browsing-Funktionen ein.","setting_refer-a-friend":"Freund werben","setting_refer-a-friend_description":"Erhalten Sie sofort 3 Monate, indem Sie einen Freund werben.","setting_general_save_browser":"Einstellungen lokal im Browser speichern","setting_general_save_browser_description":"Alle Einstellungen bleiben auf diesem Gerät.","setting_general_backup":"Einstellungen sichern","setting_general_backup_description":"Exportieren Sie Ihre Einstellungen in eine JSON-Datei zur Sicherung.","setting_general_backup_button":"Einstellungen exportieren","setting_referral_hub":"Werbezentrum","setting_referral_hub_section_1_title":"Erhalten Sie 3 Monate gratis, wenn Ihr Freund beitritt!","setting_referral_hub_section_1_button":"Kopie","copied":"Kopiert","setting_referral_hub_section_1_text":"Erhalten Sie 3 kostenlose Monate, wenn Sie einen Freund werben. Sie erhalten ebenfalls bis zu 3 Monate, je nach ihrem Plan. Ihr Bonuszeitraum wird sofort hinzugefügt.","setting_referral_hub_section_2_title":"Freund einladen","setting_referral_hub_section_2_text":"Kennen Sie jemanden, der Apexguard noch nicht nutzt? Teilen Sie Ihren persönlichen Werbelink und laden Sie ihn ein, beizutreten.","setting_referral_hub_section_3_title":"Warten Sie, bis sie sich anmelden","setting_referral_hub_section_3_text":"Stellen Sie sicher, dass Ihr Freund sein Apexguard-Abonnement mit Ihrem Werbelink abschließt.","setting_referral_hub_section_4_title":"Genießen Sie Ihre Belohnungen","setting_referral_hub_section_4_text":"Verdienen Sie 3 Bonusmonate. Ihr Freund erhält 3 Monate bei Langzeitplänen oder 1 Monat bei einem monatlichen Abonnement.","setting_network_and_privacy":"Netzwerk & Datenschutz","setting_network_and_privacy_section_1_title":"Automatische Verbindung","setting_network_and_privacy_section_1_text":"Automatisch mit VPN verbinden, wenn der Browser gestartet wird.","setting_network_and_privacy_section_2_title":"Kill Switch","setting_network_and_privacy_section_2_text":"Verhindern Sie den Internetzugriff des Browsers, wenn die VPN-Verbindung getrennt ist.","setting_network_and_privacy_section_3_title":"Split Tunneling","setting_network_and_privacy_section_3_text":"Bestimmte Domains oder IP-Adressen von der VPN-Verbindung ausschließen.","setting_network_and_privacy_dropdown_title":"Schnellster Server","setting_network_and_privacy_fastest_server":"Schnellster Server","setting_general_restore":"Einstellungen wiederherstellen","setting_general_restore_description":"Importieren Sie Ihre Einstellungen aus einer JSON-Datei, um sie wiederherzustellen.","setting_general_restore_button":"Einstellungen importieren","setting_general_share_data":"Nutzungsdaten teilen","setting_general_share_data_description":"Helfen Sie uns, unser Produkt zu verbessern und die Qualität zu steigern, indem Sie anonyme Interaktionsdaten senden.","setting_general_language":"Sprache","setting_general_appearance":"Erscheinungsbild","setting_general_user_info":"Benutzerinformationen","setting_general_subscription_active":"Abonnement aktiv bis","setting_general_logout":"Abmelden","setting_security_stop_webrtc":"WebRTC-Lecks stoppen","setting_security_stop_webrtc_description":"Schützen Sie Ihre IP-Adresse vor der Offenlegung durch das WebRTC-Protokoll.","setting_security_threat_protection":"Bedrohungsschutz","setting_security_threat_protection_description":"Blockieren Sie Werbung und schädliche Websites, wenn Sie mit dem VPN verbunden sind.","setting_security_warnings":"Warnungen","setting_security_warnings_description":"Erfahren Sie, ob eine besuchte Website unsicher ist. Verwenden Sie VPN auf diesen Websites, um Ihre Verbindung zu verschlüsseln.","setting_security_location_spoofing":"Standort-Spoofing","setting_security_location_spoofing_description":"Stellen Sie Ihren Browser so ein, dass er den Standort und die Zeitzone des VPN-Servers verwendet, mit dem Sie verbunden sind.","setting_connection_auto_connect_description":"Verbinden Sie sich bei jedem Browserstart mit dem VPN.","setting_connection_split_tunneling":"Split Tunneling","setting_connection_split_tunneling_description":"Fügen Sie Domains oder IP-Adressen hinzu, um sie vom VPN-Tunnel auszuschließen.","setting_connection_kill_switch":"Kill Switch","setting_connection_kill_switch_description":"Blockieren Sie den Internetzugriff des Browsers, wenn keine Verbindung zum VPN besteht.","setting_add_button":"Hinzufügen","setting_connection_input_placeholder":"Domain oder IP eingeben (z.B. example.com oder 192.168.1.1)","setting_connection_no_entries":"Noch keine Domains oder IPs ausgeschlossen.","setting_refer_description":"Verdienen Sie sofort 3 kostenlose Monate ApexVPN für jeden geworbenen Freund! Ihr Freund erhält sofort bis zu 3 kostenlose Monate, je nach gewähltem Plan.","setting_refer_copy_button":"Link kopieren","settings_refer_see_invited_friends":"Eingeladene Freunde ansehen","settings_refer_learn_more":"Mehr über das Werbeprogramm erfahren","login_title":"Sicher surfen, jederzeit und überall mit Apex VPN","loading":"Laden...","sign_up":"Registrieren","log_in":"Anmelden","log_out":"Abmelden","app_title":"ApexGuard","status_connected":"VERBUNDEN","status_not_connected":"Sie sind ungeschützt","ip_address":"IP-Adresse","unknown_location":"Unbekannter Standort","button_pause":"Pausieren","button_connect":"Intelligente Verbindung","button_disconnect":"Trennen","error_prefix":"Fehler","countries":"Länder","pause_5_min":"5 Min","pause_10_sec":"10 Sek","pause_30_min":"30 Min","pause_1_hour":"1 Stunde","resume_in":"Fortsetzen in","resume_now":"Jetzt fortsetzen","button_auto_disconnect":"Automatische Verbindung deaktivieren","pre_connected":"Verbinden...","pre_disconnected":"Trennen...","pre_cancel":"Absagen...","invalid_connect":"Die VPN-Verbindung konnte nicht hergestellt werden. Bitte versuchen Sie es später erneut.","something_wrong":"Etwas stimmt nicht","search_for_countries":"Suchen","invalid_jwt":"Ungültiges JWT: Token muss eine Zeichenfolge mit drei durch Punkte getrennten Teilen sein","miss_jwt":"Ungültiges JWT: Ein oder mehrere Teile fehlen","browser_api_underestimation":"Browser-API-Unterschätzung","popup_api_underestimation":"Popup-API-Unterschätzung","connect_failed":"Verbindung fehlgeschlagen","failed_to_logout":"Abmeldung fehlgeschlagen","successfully_logged":"Sie haben sich erfolgreich angemeldet!","successful_login":"ApexGuard: Erfolgreiche Anmeldung","validation_failed":"Validierung unerwartet fehlgeschlagen","validation_already":"Validierung bereits im Gange","apexguard_connected":"ApexGuard: verbunden","apexguard_successfully_connected":"Sie haben das VPN erfolgreich verbunden!","insecure_website_detected":"Unsichere Website erkannt","http_warning_message":"Diese Website verwendet eine unverschlüsselte Verbindung (HTTP). Verbinden Sie sich mit dem VPN, um Ihre Daten zu sichern.","connect_to_vpn":"Mit VPN verbinden","error_not_logged_in":"Fehler: Nicht angemeldet","error_token_validation_failed":"Token-Validierung unerwartet fehlgeschlagen","tab_close":"Fehler beim Schließen des Anmelde-Tabs","setting_security_auto_reload_tabs":"Alle Tabs automatisch neu laden","setting_security_auto_reload_tabs_description":"Alle geöffneten Tabs nach dem Verbinden mit einem VPN oder dem Ändern des VPN-Standorts immer neu laden, um Standort-Spoofing zu aktivieren.","clear_error":"Fehler löschen","This domain, IP, or mask is already in the list":"Diese Domain, IP oder Maske ist bereits in der Liste","Enter domain or IP (e.g., google.com)":"Domain oder IP eingeben (z.B. google.com)","Failed to load settings or countries":"Einstellungen oder Länder konnten nicht geladen werden","Failed to update settings":"Einstellungen konnten nicht aktualisiert werden","selective_proxy":"Selektiver Proxy","Use proxy only for specified domains":"Proxy nur für angegebene Domains verwenden","service_interruption":"Dienstunterbrechung","vpn_conflict_error":"Wir können nicht auf Proxy-Einstellungen zugreifen. Eine andere Erweiterung könnte sie steuern. Versuchen Sie, diese Erweiterung zu deaktivieren, damit ApexGuard funktioniert.","manage_extensions":"Erweiterungen verwalten","settings_imported":"Einstellungen importiert","settings_imported_successfully":"Einstellungen erfolgreich importiert","ping":"Ping","":"Problem melden","get_help":"Hilfe erhalten","report_a_problem":"Problem melden","contact_us":"Kontaktieren Sie uns","need_help":"Brauchen Sie Hilfe?","go_to_help_center":"Zum Hilfe-Center","download_logs":"Logs herunterladen","download_logs_text":"Laden Sie Ihre Diagnose-Logs herunter, um die Problemlösung zu beschleunigen.","download":"Herunterladen","describe_problem":"Beschreiben Sie Ihr Problem","cant_connect":"Kann nicht verbinden","unstable_vpn":"Instabiles VPN","slow_vpn":"Langsames VPN","no_internet":"Kein Internet","streaming":"Streaming","cant_login":"Kann nicht anmelden","other_tech":"Andere technische Probleme","issue_type":"Problemtyp","contact_information":"Kontaktinformationen","your_plans_active_until":"Ihr Plan ist aktiv bis","view_full_info":"Vollständige Informationen anzeigen","send_app_logs":"App-Logs senden","submit":"Absenden","well_reply_to":"Wir antworten an","select_a_topic":"Thema auswählen","type_your_message":"Nachricht eingeben","please_enter_message":"Bitte Nachricht eingeben","question_error_message":"Haben Sie eine Fehlermeldung erhalten?","yes":"Ja","no":"Nein","errorMessage":"Welche Fehlermeldungen waren das?","country":"Geben Sie das Land ein, in dem Sie sich gerade befinden","internetProvider":"Wer ist Ihr Internetanbieter?","please_issue_type_select":"Bitte wählen Sie den Problemtyp","status_not_connected_desc":"Verbinden Sie sich mit dem VPN für Online-Sicherheit","status_connecting_desc":"Den optimalen Server für Sie finden","paused":"Pausiert","status_disconnecting_desc":"Disconnect wird verarbeitet...","ms":"ms","bypassed_by_the_vpn_tunnel":"Vom VPN-Tunnel umgangen","proxy_connection_failed":"Proxy-Verbindung fehlgeschlagen","need_subscription":"Abonnement erforderlich","need_subscription_desc_1":"Es sieht so aus, als wäre Ihr Abonnement nicht aktiv.","need_subscription_desc_2":"Aktivieren Sie es, um diese Funktion freizuschalten!","subscribe_now":"Jetzt abonnieren","System":"System","Light":"Hell","Dark":"Dunkel","English":"Englisch","Russian":"Russisch","Deutsch":"Deutsch","disable_vpn_domain_and_subdomains":"VPN für diese Domäne und ihre Subdomänen deaktivieren","disable_vpn_domain":"VPN für diese Domäne deaktivieren","remove_from_list_vpn_domain":"Entfernen Sie diese Domäne aus der Split-Tunneling-Liste","not_active_subscription":"Nicht aktives Abonnement","connection_lost":"Verbindung verloren...","cancel":"Stornieren","cant_add_a_file":"Sie können keine Datei hinzufügen? Versuchen Sie, die Erweiterung in einem","new_tab":"Neuer Tab","back_to_settings":"Zurück zu den Einstellungen","report_problem_feedback_title":"Vielen Dank für Ihr Feedback!","report_problem_feedback_text":"Wir schätzen Ihre Zeit und Mühe, die Sie uns bei der Verbesserung Ihrer Arbeit widmen.","contact_us_title":"Danke, dass Sie uns kontaktiert haben!","contact_us_text":"Wir schätzen Ihre Zeit und Mühe, uns zu verbessern.","unable_to_access_proxy_settings":"Zugriff auf Proxy-Einstellungen nicht möglich","another_extension_controlling_line1":"Möglicherweise werden diese Einstellungen von einer anderen Erweiterung gesteuert. ","another_extension_controlling_line2":"Deaktivieren Sie diese Erweiterung, damit ApexGuard ordnungsgemäß funktioniert","setting_choosing_api_gateway":"Proxy-Server ändern","setting_choosing_api_gateway_description":"Wählen Sie einen Proxyserverstandort aus, um die Verbindung zu optimieren.","search_proxy_server":"Proxy-Server suchen","cities":"Städte","timeout_request":"Zeitüberschreitung der Anfrage. Bitte versuchen Sie es erneut.","session_expired_title":"Sitzung abgelaufen","session_expired_message":"Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an, um den Dienst fortzusetzen.","empty_importing_settings":"Fehler beim Importieren von Einstellungen: leere Datei","invalid_fields":"Ungültige Felder","import_failed":"Import fehlgeschlagen","limited_access_error":"Eingeschränkter Zugriff erkannt","limited_access_line1":"ApexGuard benötigt vollen Zugriff auf alle Websites, um einwandfrei zu funktionieren.","limited_access_line2":"Ihre aktuelle Einstellung ist eingeschränkt (z. B. \'Bei Klick\' oder \'Auf bestimmten Websites\').","limited_access_action":"Bitte ändern Sie den Zugriff auf \'Auf allen Websites\' in den Erweiterungseinstellungen.","subscription_expired":"Abonnement abgelaufen","expires_in_days":"Abonnement läuft {day} Tage ab","expires_tomorrow":"Abonnement läuft morgen ab","expires_today":"Abonnement läuft heute ab","expires_in_day":"Läuft am {day} Tag ab","activate_your_vpn":"Lassen Sie uns Ihr VPN aktivieren","choose_plan":"Wählen Sie einen Plan, um fortzufahren","get_subscription":"Abonnement erhalten","no_valid_connections":"Keine gültigen Verbindungen verfügbar","renew_now":"Jetzt verlängern"}');

/***/ }),

/***/ "./src/locale/en/translation.json":
/*!****************************************!*\
  !*** ./src/locale/en/translation.json ***!
  \****************************************/
/***/ ((module) => {

"use strict";
module.exports = /*#__PURE__*/JSON.parse('{"setting":"Settings","setting_general":"General","setting_general_description":"Choose extension preferences or log out.","setting_connection":"Connection","setting_connection_description":"Manage your VPN connection.","setting_security":"Security and privacy","setting_security_description":"Set up secure browsing features.","setting_refer-a-friend":"Refer a friend","setting_refer-a-friend_description":"Get 3 months instantly by referring a friend.","setting_general_save_browser":"Store settings locally in browser","setting_general_save_browser_description":"All preferences will remain on this device.","setting_general_backup":"Backup your settings","setting_general_backup_description":"Export your settings to a JSON file for backup.","setting_general_backup_button":"Export settings","setting_referral_hub":"Referral Hub","setting_referral_hub_section_1_title":"Get 3 months free when your friend joins!","setting_referral_hub_section_1_button":"Copy","copied":"Copied","setting_referral_hub_section_1_text":"Get 3 free months when you refer a friend. They’ll get up to 3 months too, based on their plan. Your bonus time is added instantly","setting_referral_hub_section_2_title":"Invite a friend","setting_referral_hub_section_2_text":"Know someone not using Apexguard yet? Share your personal referral link and invite them to join.","setting_referral_hub_section_3_title":"Wait for them to subscribe","setting_referral_hub_section_3_text":"Make sure your friend completes their Apexguard subscription using your referral link.","setting_referral_hub_section_4_title":"Enjoy your rewards","setting_referral_hub_section_4_text":"Earn 3 bonus months. Your friend gets 3 months on long-term plans, or 1 month with a monthly subscription.","setting_network_and_privacy":"Network & Privacy","setting_network_and_privacy_section_1_title":"Auto-connect","setting_network_and_privacy_section_1_text":"Automatically connect to VPN on browser launch","setting_network_and_privacy_section_2_title":"Kill Switch","setting_network_and_privacy_section_2_text":"Prevent your browser from accessing the internet if the VPN disconnects.","setting_network_and_privacy_section_3_title":"Split Tunneling","setting_network_and_privacy_section_3_text":"Exclude specific domains or IP addresses from the VPN connection.","setting_network_and_privacy_dropdown_title":"Fastest server","setting_network_and_privacy_fastest_server":"Fastest server","setting_general_restore":"Restore your settings","setting_general_restore_description":"Import your settings from a JSON file to restore them.","setting_general_restore_button":"Import settings","setting_general_share_data":"Share user interaction data","setting_general_share_data_description":"Help us improve our product and elevate its quality by sending anonymous interaction data.","setting_general_language":"Language","setting_general_appearance":"Appearance","setting_general_user_info":"User info","setting_general_subscription_active":"Subscription active until","setting_general_logout":"Logout","setting_security_stop_webrtc":"Stop WebRTC leaks","setting_security_stop_webrtc_description":"Protect your IP address from getting exposed through the WebRTC protocol.","setting_security_threat_protection":"Threat Protection","setting_security_threat_protection_description":"Block ads and malicious websites when connected to VPN.","setting_security_warnings":"Warnings","setting_security_warnings_description":"Know if a website you\'re visiting is not secure. Use VPN on these websites to encrypt your connection.","setting_security_location_spoofing":"Location Spoofing","setting_security_location_spoofing_description":"Set your browser to use the location and time zone of the VPN server you\'re connected to.","setting_connection_auto_connect_description":"Connect to VPN every time you launch the browser.","setting_connection_split_tunneling":"Split tunneling","setting_connection_split_tunneling_description":"Add domains or IP addresses to exclude them from the VPN tunnel.","setting_connection_kill_switch":"Kill switch","setting_connection_kill_switch_description":"Block the browser from accessing the internet when not connected to a VPN.","setting_add_button":"Add","setting_connection_input_placeholder":"Enter domain or IP (e.g., example.com or 192.168.1.1)","setting_connection_no_entries":"No domains or IPs excluded yet.","setting_refer_description":"Instantly earn 3 free months of ApexVPN for every friend you refer! Your friend instantly gets up to 3 free months depending on the plan they choose.","setting_refer_copy_button":"Copy link","settings_refer_see_invited_friends":"See Invited Friends","settings_refer_learn_more":"Learn more about referrer program","login_title":"Browse Securely Anytime, Anywhere with Apex VPN","loading":"Loading...","sign_up":"Sign up","log_in":"Log In","log_out":"Log out","app_title":"ApexGuard","status_connected":"CONNECTED","status_not_connected":"You are unprotected","ip_address":"IP address","unknown_location":"Unknown location","button_pause":"Pause","button_connect":"Smart Connection","button_disconnect":"Disconnect","error_prefix":"Error","countries":"Countries","pause_5_min":"5 min","pause_10_sec":"10 sec","pause_30_min":"30 min","pause_1_hour":"1 hour","resume_in":"Resumes in","resume_now":"Resume Now","button_auto_disconnect":"Disable Auto-connect","pre_connected":"Connecting...","pre_disconnected":"Disconnecting...","pre_cancel":"Cancelling...","invalid_connect":"Unable to establish the VPN connection, please try again later","something_wrong":"Something wrong","search_for_countries":"Search","invalid_jwt":"Invalid JWT: Token must be a string with three parts separated by dots","miss_jwt":"Invalid JWT: Missing one or more parts","browser_api_underestimation":"Browser API underestimation","popup_api_underestimation":"Popup API underestimation","connect_failed":"Connect failed","failed_to_logout":"Failed to logout","successfully_logged":"You have successfully logged in!","successful_login":"ApexGuard: Successful login","validation_failed":"Validation failed unexpectedly","validation_already":"Validation already in progress","apexguard_connected":"ApexGuard: connected","apexguard_successfully_connected":"You have successfully connected VPN!","insecure_website_detected":"Insecure Website Detected","http_warning_message":"This site uses an unencrypted connection (HTTP). Connect to VPN to secure your data.","connect_to_vpn":"Connect to VPN","error_not_logged_in":"Error: Not logged in","error_token_validation_failed":"Token validation failed unexpectedly","tab_close":"Failed to close login tab","setting_security_auto_reload_tabs":"Auto-reload all tabs","setting_security_auto_reload_tabs_description":"Always reload all opened tabs after connecting to a VPN or changing VPN location to activate location spoofing.","clear_error":"Clear","This domain, IP, or mask is already in the list":"This domain, IP, or mask is already in the list","Enter domain or IP (e.g., google.com)":"Enter domain or IP (e.g., google.com)","Failed to load settings or countries":"Failed to load settings or countries","Failed to update settings":"Failed to update settings","selective_proxy":"Selective Proxy","Use proxy only for specified domains":"Use proxy only for specified domains","service_interruption":"Service Interruption","vpn_conflict_error":"We can\'t access proxy settings. Another extension might be controlling them. Try disabling that extension for ApexGuard to run.","manage_extensions":"Manage Extensions","settings_imported":"Settings Imported","settings_imported_successfully":"Settings imported successfully","ping":"Ping","":"Report a Problem","get_help":"Get Help","report_a_problem":"Report a Problem","contact_us":"Contact Us","need_help":"Need Help?","go_to_help_center":"Go to Help Center","download_logs":"Download Logs","download_logs_text":"Download your diagnostic logs to speed up issue resolution.","download":"Download","describe_problem":"Describe your problem","cant_connect":"Can\'t connect","unstable_vpn":"Unstable vpn","slow_vpn":"Slow vpn","no_internet":"No internet","streaming":"Streaming","cant_login":"Can\'t login","other_tech":"Other tech","issue_type":"Issue Type","contact_information":"Contact information","your_plans_active_until":"Your plan\'s active until","view_full_info":"View Full Info","send_app_logs":"Send App Logs","submit":"Submit","well_reply_to":"We\'ll reply to","select_a_topic":"Select a topic","type_your_message":"Type your message","please_enter_message":"Please enter message","question_error_message":"Did you receive an error message?","yes":"Yes","no":"No","errorMessage":"What were the error messages?","country":"Type the country you’re currently in","internetProvider":"Who is your internet provider?","please_issue_type_select":"Please issue type select","status_not_connected_desc":"Connect to VPN for online security","status_connecting_desc":"Finding the optimal server for you","status_disconnecting_desc":"Disconnect is processing...","paused":"Paused","ms":"ms","bypassed_by_the_vpn_tunnel":"Bypassed by the VPN tunnel","proxy_connection_failed":"Proxy connection failed","need_subscription":"Subscription Required","need_subscription_desc_1":"It looks like your subscription isn’t active.","need_subscription_desc_2":"Turn it on to unlock this feature!","subscribe_now":"Subscribe now","System":"System","Light":"Light","Dark":"Dark","English":"English","Russian":"Russian","Deutsch":"Deutsch","disable_vpn_domain_and_subdomains":"Disable VPN for this domain and its subdomains","disable_vpn_domain":"Disable VPN for this domain","remove_from_list_vpn_domain":"Remove this domain from split tunneling list","not_active_subscription":"Not active subscription","connection_lost":"Connection lost...","cancel":"Cancel","cant_add_a_file":"Can’t add a file? Try opening the extension in a","new_tab":"new tab","back_to_settings":"Back to Settings","report_problem_feedback_title":"Thank you for your feedback!","unable_to_access_proxy_settings":"Unable to access proxy settings","another_extension_controlling_line1":"Another extension may be controlling these settings. ","another_extension_controlling_line2":"Disable that extension to allow ApexGuard to work properly","report_problem_feedback_text":"We appreciate your time and effort in helping us improve.","contact_us_title":"Thank you for contacting us!","contact_us_text":"We appreciate your time and effort in helping us improve.","setting_choosing_api_gateway":"Change proxy server","setting_choosing_api_gateway_description":"Select a proxy server location to optimize connection.","search_proxy_server":"Search proxy server","cities":"Cities","timeout_request":"Request timed out. Please try again.","session_expired_title":"Session Expired.","session_expired_message":"Your session has expired. Please log in again to continue using the service.","empty_importing_settings":"Error importing settings: empty file.","invalid_fields":"Invalid fields","import_failed":"Import failed","limited_access_error":"Limited access detected","limited_access_line1":"ApexGuard requires full access to all sites to function properly.","limited_access_line2":"Your current setting is restricted (e.g., \'On click\' or \'On specific sites\').","limited_access_action":"Please change the access to \'On all sites\' in the extension settings","subscription_expired":"Subscription Expired","expires_in_days":"Subscription expires {day} days","expires_tomorrow":"Subscription expires tomorrow","expires_today":"Subscription expires today","expires_in_day":"Expires in {day} day","activate_your_vpn":"Let\'s activate your VPN","choose_plan":"Choose a plan to continue","get_subscription":"Get subscription","no_valid_connections":"No valid connections available","renew_now":"Renew now"}');

/***/ }),

/***/ "./src/sw/constants/api_urls.js":
/*!**************************************!*\
  !*** ./src/sw/constants/api_urls.js ***!
  \**************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var config = __webpack_require__(/*! ../../../config */ "./config.js");
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var API_URLS = {
  API_GATEWAYS: "https://".concat(config.API_GATEWAY_DOMAIN_DEF, "/api-gateways"),
  PING_PONG: "https://".concat(config.API_GATEWAY_DOMAIN_DEF, "/ping/1"),
  DOMAIN_FOR_UPDATE: "https://www.amazon.de/404?no-cache=",
  QUICK_PING_IP: 'dns.google'
};
function getCurrentApiGateWayDomain() {
  return _getCurrentApiGateWayDomain.apply(this, arguments);
}
function _getCurrentApiGateWayDomain() {
  _getCurrentApiGateWayDomain = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var domain;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          _context.n = 1;
          return StorageService.getApiGatewayMain();
        case 1:
          domain = _context.v;
          return _context.a(2, domain || config.API_GATEWAY_DOMAIN);
      }
    }, _callee);
  }));
  return _getCurrentApiGateWayDomain.apply(this, arguments);
}
function getRefreshApiUrl() {
  return _getRefreshApiUrl.apply(this, arguments);
}
function _getRefreshApiUrl() {
  _getRefreshApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    var domain;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          _context2.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context2.v;
          return _context2.a(2, "https://".concat(domain, "/refresh"));
      }
    }, _callee2);
  }));
  return _getRefreshApiUrl.apply(this, arguments);
}
function getTokenApiUrl() {
  return _getTokenApiUrl.apply(this, arguments);
}
function _getTokenApiUrl() {
  _getTokenApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
    var domain;
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.n) {
        case 0:
          _context3.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context3.v;
          return _context3.a(2, "https://".concat(domain, "/token"));
      }
    }, _callee3);
  }));
  return _getTokenApiUrl.apply(this, arguments);
}
function getCitiesApiUrl() {
  return _getCitiesApiUrl.apply(this, arguments);
}
function _getCitiesApiUrl() {
  _getCitiesApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
    var domain;
    return _regenerator().w(function (_context4) {
      while (1) switch (_context4.n) {
        case 0:
          _context4.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context4.v;
          return _context4.a(2, "https://".concat(domain, "/cities"));
      }
    }, _callee4);
  }));
  return _getCitiesApiUrl.apply(this, arguments);
}
function getAuthLinksApiUrl() {
  return _getAuthLinksApiUrl.apply(this, arguments);
}
function _getAuthLinksApiUrl() {
  _getAuthLinksApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
    var domain;
    return _regenerator().w(function (_context5) {
      while (1) switch (_context5.n) {
        case 0:
          _context5.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context5.v;
          return _context5.a(2, "https://".concat(domain, "/auth-links"));
      }
    }, _callee5);
  }));
  return _getAuthLinksApiUrl.apply(this, arguments);
}
function getConnectApiUrl() {
  return _getConnectApiUrl.apply(this, arguments);
}
function _getConnectApiUrl() {
  _getConnectApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() {
    var domain;
    return _regenerator().w(function (_context6) {
      while (1) switch (_context6.n) {
        case 0:
          _context6.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context6.v;
          return _context6.a(2, "https://".concat(domain, "/connect"));
      }
    }, _callee6);
  }));
  return _getConnectApiUrl.apply(this, arguments);
}
function getMyIpApiUrl() {
  return _getMyIpApiUrl.apply(this, arguments);
}
function _getMyIpApiUrl() {
  _getMyIpApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
    var domain;
    return _regenerator().w(function (_context7) {
      while (1) switch (_context7.n) {
        case 0:
          _context7.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context7.v;
          return _context7.a(2, "https://".concat(domain, "/my-ip"));
      }
    }, _callee7);
  }));
  return _getMyIpApiUrl.apply(this, arguments);
}
function getStateApiUrl() {
  return _getStateApiUrl.apply(this, arguments);
}
function _getStateApiUrl() {
  _getStateApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() {
    var domain;
    return _regenerator().w(function (_context8) {
      while (1) switch (_context8.n) {
        case 0:
          _context8.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context8.v;
          return _context8.a(2, "https://".concat(domain, "/state"));
      }
    }, _callee8);
  }));
  return _getStateApiUrl.apply(this, arguments);
}
function getPrivateLinksApiUrl(_x) {
  return _getPrivateLinksApiUrl.apply(this, arguments);
}
function _getPrivateLinksApiUrl() {
  _getPrivateLinksApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(type) {
    var domain;
    return _regenerator().w(function (_context9) {
      while (1) switch (_context9.n) {
        case 0:
          _context9.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context9.v;
          return _context9.a(2, "https://".concat(domain, "/private-links/").concat(type));
      }
    }, _callee9);
  }));
  return _getPrivateLinksApiUrl.apply(this, arguments);
}
function getThreatProtectionApiUrl() {
  return _getThreatProtectionApiUrl.apply(this, arguments);
}
function _getThreatProtectionApiUrl() {
  _getThreatProtectionApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0() {
    var domain;
    return _regenerator().w(function (_context0) {
      while (1) switch (_context0.n) {
        case 0:
          _context0.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context0.v;
          return _context0.a(2, "https://".concat(domain, "/threat-protection/blocked-domains/extension"));
      }
    }, _callee0);
  }));
  return _getThreatProtectionApiUrl.apply(this, arguments);
}
function getDomainForUpdateApiUrl() {
  return _getDomainForUpdateApiUrl.apply(this, arguments);
}
function _getDomainForUpdateApiUrl() {
  _getDomainForUpdateApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1() {
    var domain;
    return _regenerator().w(function (_context1) {
      while (1) switch (_context1.n) {
        case 0:
          _context1.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context1.v;
          return _context1.a(2, "https://".concat(domain, "/404?no-cache="));
      }
    }, _callee1);
  }));
  return _getDomainForUpdateApiUrl.apply(this, arguments);
}
function getIssueReportsApiUrl() {
  return _getIssueReportsApiUrl.apply(this, arguments);
}
function _getIssueReportsApiUrl() {
  _getIssueReportsApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10() {
    var domain;
    return _regenerator().w(function (_context10) {
      while (1) switch (_context10.n) {
        case 0:
          _context10.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context10.v;
          return _context10.a(2, "https://".concat(domain, "/issue-reports"));
      }
    }, _callee10);
  }));
  return _getIssueReportsApiUrl.apply(this, arguments);
}
function getFeatureSuggestionsApiUrl() {
  return _getFeatureSuggestionsApiUrl.apply(this, arguments);
}
function _getFeatureSuggestionsApiUrl() {
  _getFeatureSuggestionsApiUrl = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11() {
    var domain;
    return _regenerator().w(function (_context11) {
      while (1) switch (_context11.n) {
        case 0:
          _context11.n = 1;
          return getCurrentApiGateWayDomain();
        case 1:
          domain = _context11.v;
          return _context11.a(2, "https://".concat(domain, "/feature-suggestions"));
      }
    }, _callee11);
  }));
  return _getFeatureSuggestionsApiUrl.apply(this, arguments);
}
var PRIVATE_LINKS_TYPES = {
  TWO_FACTOR_AUTH_SETUP: 'two_factor_auth_setup',
  PRICING: 'pricing',
  DASHBOARD: 'dashboard'
};
var SERVER_DEF_PORT = 443;
var FLAG_DOMAIN = 'icons/flags/';
var deviceId = null;
// const deviceId = generateDeviceId();

var DEFAULT_HEADERS = {
  'Content-Type': 'application/json',
  'Device-ID': deviceId
};
module.exports = {
  API_URLS: API_URLS,
  DEFAULT_HEADERS: DEFAULT_HEADERS,
  FLAG_DOMAIN: FLAG_DOMAIN,
  PRIVATE_LINKS_TYPES: PRIVATE_LINKS_TYPES,
  SERVER_DEF_PORT: SERVER_DEF_PORT,
  getRefreshApiUrl: getRefreshApiUrl,
  getTokenApiUrl: getTokenApiUrl,
  getCitiesApiUrl: getCitiesApiUrl,
  getAuthLinksApiUrl: getAuthLinksApiUrl,
  getConnectApiUrl: getConnectApiUrl,
  getMyIpApiUrl: getMyIpApiUrl,
  getStateApiUrl: getStateApiUrl,
  getPrivateLinksApiUrl: getPrivateLinksApiUrl,
  getThreatProtectionApiUrl: getThreatProtectionApiUrl,
  getIssueReportsApiUrl: getIssueReportsApiUrl,
  getFeatureSuggestionsApiUrl: getFeatureSuggestionsApiUrl
};

/***/ }),

/***/ "./src/sw/constants/country_by_continent.js":
/*!**************************************************!*\
  !*** ./src/sw/constants/country_by_continent.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   COUNTRY_TO_CONTINENT: () => (/* binding */ COUNTRY_TO_CONTINENT)
/* harmony export */ });
var COUNTRY_TO_CONTINENT = {
  "Bosnia and Herzegovina": "EUROPE",
  "Bangladesh": "ASIA",
  "Georgia": "ASIA",
  "Switzerland": "EUROPE",
  "Finland": "EUROPE",
  "Taiwan": "ASIA",
  "Luxembourg": "EUROPE",
  "Lebanon": "ASIA",
  "Laos": "ASIA",
  "Belgium": "EUROPE",
  "Mexico": "AMERICAS",
  "Philippines": "ASIA",
  "Brunei": "ASIA",
  "Pakistan": "ASIA",
  "Poland": "EUROPE",
  "France": "EUROPE",
  "El Salvador": "AMERICAS",
  "Indonesia": "ASIA",
  "Seychelles": "AFRICA",
  "Uzbekistan": "ASIA",
  "Turkey": "ASIA",
  "Puerto Rico": "AMERICAS",
  "Myanmar": "ASIA",
  "Italy": "EUROPE",
  "Qatar": "ASIA",
  "Thailand": "ASIA",
  "Germany": "EUROPE",
  "Croatia": "EUROPE",
  "Argentina": "AMERICAS",
  "Costa Rica": "AMERICAS",
  "Peru": "AMERICAS",
  "Bahrain": "ASIA",
  "Greenland": "AMERICAS",
  "Canada": "AMERICAS",
  "Jersey": "EUROPE",
  "Latvia": "EUROPE",
  "Curacao": "AMERICAS",
  "Curaçao": "AMERICAS",
  "Slovenia": "EUROPE",
  "Nepal": "ASIA",
  "Dominican Republic": "AMERICAS",
  "Portugal": "EUROPE",
  "Malta": "EUROPE",
  "Albania": "EUROPE",
  "South Korea": "ASIA",
  "Norway": "EUROPE",
  "Slovakia": "EUROPE",
  "Isle of Man": "EUROPE",
  "Ghana": "AFRICA",
  "Estonia": "EUROPE",
  "Paraguay": "AMERICAS",
  "USA": "AMERICAS",
  "United States": "AMERICAS",
  "Denmark": "EUROPE",
  "Liechtenstein": "EUROPE",
  "Brazil": "AMERICAS",
  "Malaysia": "ASIA",
  "Panama": "AMERICAS",
  "Turkmenistan": "ASIA",
  "Monaco": "EUROPE",
  "Cyprus": "ASIA",
  "Tunisia": "AFRICA",
  "Ecuador": "AMERICAS",
  "Cambodia": "ASIA",
  "Ethiopia": "AFRICA",
  "Kenya": "AFRICA",
  "Bulgaria": "EUROPE",
  "Algeria": "AFRICA",
  "Kazakhstan": "ASIA",
  "Sri Lanka": "ASIA",
  "Morocco": "AFRICA",
  "Chile": "AMERICAS",
  "Guatemala": "AMERICAS",
  "Belize": "AMERICAS",
  "Vietnam": "ASIA",
  "Ireland": "EUROPE",
  "Ukraine": "EUROPE",
  "Japan": "ASIA",
  "Senegal": "AFRICA",
  "South Africa": "AFRICA",
  "Maldives": "ASIA",
  "Colombia": "AMERICAS",
  "Australia": "AUSTRALIA",
  "Tanzania": "AFRICA",
  "North Macedonia": "EUROPE",
  "Sweden": "EUROPE",
  "Netherlands": "EUROPE",
  "Bolivia": "AMERICAS",
  "Uruguay": "AMERICAS",
  "Czech Republic": "EUROPE",
  "Nigeria": "AFRICA",
  "Hungary": "EUROPE",
  "Saudi Arabia": "ASIA",
  "Honduras": "AMERICAS",
  "Kuwait": "ASIA",
  "United Arab Emirates": "ASIA",
  "Greece": "EUROPE",
  "Angola": "AFRICA",
  "Israel": "ASIA",
  "Lithuania": "EUROPE",
  "New Zealand": "AUSTRALIA",
  "Austria": "EUROPE",
  "Spain": "EUROPE",
  "Armenia": "ASIA",
  "Mongolia": "ASIA",
  "Egypt": "AFRICA",
  "Bahamas": "AMERICAS",
  "Serbia": "EUROPE",
  "Bhutan": "ASIA",
  "India": "ASIA",
  "Montenegro": "EUROPE",
  "Iceland": "EUROPE",
  "Singapore": "ASIA",
  "Azerbaijan": "ASIA",
  "Bermuda": "AMERICAS",
  "Romania": "EUROPE",
  "Oman": "ASIA",
  "Andorra": "EUROPE",
  "Venezuela": "AMERICAS",
  "Jamaica": "AMERICAS",
  "Moldova": "EUROPE"
};

/***/ }),

/***/ "./src/sw/constants/country_code_mapping.js":
/*!**************************************************!*\
  !*** ./src/sw/constants/country_code_mapping.js ***!
  \**************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   CITY_TIMEZONE_MAPPING: () => (/* binding */ CITY_TIMEZONE_MAPPING),
/* harmony export */   COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2: () => (/* binding */ COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2)
/* harmony export */ });
var COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2 = {
  "BIH": "BA",
  // Bosnia and Herzegovina
  "BGD": "BD",
  // Bangladesh
  "GEO": "GE",
  // Georgia
  "CHE": "CH",
  // Switzerland
  "FIN": "FI",
  // Finland
  "TWN": "TW",
  // Taiwan
  "LUX": "LU",
  // Luxembourg
  "LBN": "LB",
  // Lebanon
  "LAO": "LA",
  // Laos
  "BEL": "BE",
  // Belgium
  "MEX": "MX",
  // Mexico
  "PHL": "PH",
  // Philippines
  "BRN": "BN",
  // Brunei
  "PAK": "PK",
  // Pakistan
  "POL": "PL",
  // Poland
  "FRA": "FR",
  // France
  "SLV": "SV",
  // El Salvador
  "IDN": "ID",
  // Indonesia
  "SYC": "SC",
  // Seychelles
  "UZB": "UZ",
  // Uzbekistan
  "TUR": "TR",
  // Turkey
  "PRI": "PR",
  // Puerto Rico
  "MMR": "MM",
  // Myanmar
  "ITA": "IT",
  // Italy
  "QAT": "QA",
  // Qatar
  "THA": "TH",
  // Thailand
  "DEU": "DE",
  // Germany
  "HRV": "HR",
  // Croatia
  "ARG": "AR",
  // Argentina
  "CRI": "CR",
  // Costa Rica
  "PER": "PE",
  // Peru
  "BHR": "BH",
  // Bahrain
  "GRL": "GL",
  // Greenland
  "CAN": "CA",
  // Canada
  "JEY": "JE",
  // Jersey
  "LVA": "LV",
  // Latvia
  "CUW": "CW",
  // Curaçao
  "SVN": "SI",
  // Slovenia
  "NPL": "NP",
  // Nepal
  "DOM": "DO",
  // Dominican Republic
  "PRT": "PT",
  // Portugal
  "MLT": "MT",
  // Malta
  "ALB": "AL",
  // Albania
  "KOR": "KR",
  // South Korea
  "NOR": "NO",
  // Norway
  "SVK": "SK",
  // Slovakia
  "IMN": "IM",
  // Isle of Man
  "GHA": "GH",
  // Ghana
  "EST": "EE",
  // Estonia
  "PRY": "PY",
  // Paraguay
  "USA": "US",
  // USA
  "DNK": "DK",
  // Denmark
  "LIE": "LI",
  // Liechtenstein
  "BRA": "BR",
  // Brazil
  "MYS": "MY",
  // Malaysia
  "PAN": "PA",
  // Panama
  "TKM": "TM",
  // Turkmenistan
  "MCO": "MC",
  // Monaco
  "CYP": "CY",
  // Cyprus
  "TUN": "TN",
  // Tunisia
  "ECU": "EC",
  // Ecuador
  "KHM": "KH",
  // Cambodia
  "ETH": "ET",
  // Ethiopia
  "KEN": "KE",
  // Kenya
  "BGR": "BG",
  // Bulgaria
  "DZA": "DZ",
  // Algeria
  "KAZ": "KZ",
  // Kazakhstan
  "LKA": "LK",
  // Sri Lanka
  "MAR": "MA",
  // Morocco
  "CHL": "CL",
  // Chile
  "GTM": "GT",
  // Guatemala
  "BLZ": "BZ",
  // Belize
  "VNM": "VN",
  // Vietnam
  "IRL": "IE",
  // Ireland
  "UKR": "UA",
  // Ukraine
  "JPN": "JP",
  // Japan
  "SEN": "SN",
  // Senegal
  "ZAF": "ZA",
  // South Africa
  "MDV": "MV",
  // Maldives
  "COL": "CO",
  // Colombia
  "AUS": "AU",
  // Australia
  "TZA": "TZ",
  // Tanzania
  "MKD": "MK",
  // North Macedonia
  "SWE": "SE",
  // Sweden
  "NLD": "NL",
  // Netherlands
  "BOL": "BO",
  // Bolivia
  "URY": "UY",
  // Uruguay
  "CZE": "CZ",
  // Czech Republic
  "NGA": "NG",
  // Nigeria
  "HUN": "HU",
  // Hungary
  "SAU": "SA",
  // Saudi Arabia
  "HND": "HN",
  // Honduras
  "KWT": "KW",
  // Kuwait
  "ARE": "AE",
  // United Arab Emirates
  "GRC": "GR",
  // Greece
  "AGO": "AO",
  // Angola
  "ISR": "IL",
  // Israel
  "LTU": "LT",
  // Lithuania
  "NZL": "NZ",
  // New Zealand
  "AUT": "AT",
  // Austria
  "ESP": "ES",
  // Spain
  "ARM": "AM",
  // Armenia
  "MNG": "MN",
  // Mongolia
  "EGY": "EG",
  // Egypt
  "BHS": "BS",
  // Bahamas
  "SRB": "RS",
  // Serbia
  "BTN": "BT",
  // Bhutan
  "IND": "IN",
  // India
  "MNE": "ME",
  // Montenegro
  "ISL": "IS",
  // Iceland
  "SGP": "SG",
  // Singapore
  "AZE": "AZ",
  // Azerbaijan
  "BMU": "BM",
  // Bermuda
  "ROU": "RO",
  // Romania
  "OMN": "OM",
  // Oman
  "AND": "AD",
  // Andorra
  "VEN": "VE",
  // Venezuela
  "JAM": "JM",
  // Jamaica
  "MDA": "MD",
  // Moldova
  "LON": "GB",
  // London
  "GBR": "GB",
  // London
  "HKG": "HK" // Hong Kong
};
var CITY_TIMEZONE_MAPPING = {
  "SJO": {
    timeZone: "America/Costa_Rica",
    offset: -6
  },
  // San José, Costa Rica
  "BAK": {
    timeZone: "Asia/Baku",
    offset: 4
  },
  // Baku, Azerbaijan
  "CUR": {
    timeZone: "America/Curacao",
    offset: -4
  },
  // Willemstad, Curaçao
  "ADD": {
    timeZone: "Africa/Addis_Ababa",
    offset: 3
  },
  // Addis Ababa, Ethiopia
  "NYC": {
    timeZone: "America/New_York",
    offset: -5
  },
  // New York, USA
  "LJU": {
    timeZone: "Europe/Ljubljana",
    offset: 1
  },
  // Ljubljana, Slovenia
  "ROM": {
    timeZone: "Europe/Rome",
    offset: 1
  },
  // Rome, Italy
  "STO": {
    timeZone: "Europe/Stockholm",
    offset: 1
  },
  // Stockholm, Sweden
  "LAD": {
    timeZone: "Africa/Luanda",
    offset: 1
  },
  // Luanda, Angola
  "JER": {
    timeZone: "Europe/Jersey",
    offset: 0
  },
  // Saint Helier, Jersey
  "LUX": {
    timeZone: "Europe/Luxembourg",
    offset: 1
  },
  // Luxembourg, Luxembourg
  "ASU": {
    timeZone: "America/Asuncion",
    offset: -4
  },
  // Asunción, Paraguay
  "VTE": {
    timeZone: "Asia/Vientiane",
    offset: 7
  },
  // Vientiane, Laos
  "BOM": {
    timeZone: "Asia/Kolkata",
    offset: 5.5
  },
  // Mumbai, India
  "VLT": {
    timeZone: "Europe/Malta",
    offset: 1
  },
  // Valletta, Malta
  "HAN": {
    timeZone: "Asia/Ho_Chi_Minh",
    offset: 7
  },
  // Hanoi, Vietnam
  "BEL": {
    timeZone: "America/Belize",
    offset: -6
  },
  // Belmopan, Belize
  "BEG": {
    timeZone: "Europe/Belgrade",
    offset: 1
  },
  // Belgrade, Serbia
  "ABV": {
    timeZone: "Africa/Lagos",
    offset: 1
  },
  // Abuja, Nigeria
  "CMN": {
    timeZone: "Africa/Casablanca",
    offset: 1
  },
  // Casablanca, Morocco
  "IST": {
    timeZone: "Europe/Istanbul",
    offset: 3
  },
  // Istanbul, Turkey
  "ALV": {
    timeZone: "Europe/Andorra",
    offset: 1
  },
  // Andorra la Vella, Andorra
  "BOG": {
    timeZone: "America/Bogota",
    offset: -5
  },
  // Bogota, Colombia
  "PNH": {
    timeZone: "Asia/Phnom_Penh",
    offset: 7
  },
  // Phnom Penh, Cambodia
  "KBP": {
    timeZone: "Europe/Kyiv",
    offset: 2
  },
  // Kyiv, Ukraine
  "BEY": {
    timeZone: "Asia/Beirut",
    offset: 2
  },
  // Beirut, Lebanon
  "MAD": {
    timeZone: "Europe/Madrid",
    offset: 1
  },
  // Madrid, Spain
  "KIV": {
    timeZone: "Europe/Chisinau",
    offset: 2
  },
  // Chisinau, Moldova
  "CMB": {
    timeZone: "Asia/Colombo",
    offset: 5.5
  },
  // Colombo, Sri Lanka
  "BUH": {
    timeZone: "Europe/Bucharest",
    offset: 2
  },
  // Bucharest, Romania
  "ULN": {
    timeZone: "Asia/Ulaanbaatar",
    offset: 8
  },
  // Ulaanbaatar, Mongolia
  "ASB": {
    timeZone: "Asia/Ashgabat",
    offset: 5
  },
  // Ashgabat, Turkmenistan
  "VAD": {
    timeZone: "Europe/Vaduz",
    offset: 1
  },
  // Vaduz, Liechtenstein
  "SJJ": {
    timeZone: "Europe/Sarajevo",
    offset: 1
  },
  // Sarajevo, Bosnia and Herzegovina
  "DAC": {
    timeZone: "Asia/Dhaka",
    offset: 6
  },
  // Dhaka, Bangladesh
  "KWI": {
    timeZone: "Asia/Kuwait",
    offset: 3
  },
  // Kuwait City, Kuwait
  "BTS": {
    timeZone: "Europe/Bratislava",
    offset: 1
  },
  // Bratislava, Slovakia
  "HEL": {
    timeZone: "Europe/Helsinki",
    offset: 2
  },
  // Helsinki, Finland
  "GRU": {
    timeZone: "America/Sao_Paulo",
    offset: -3
  },
  // San Paolo, Brazil
  "RUH": {
    timeZone: "Asia/Riyadh",
    offset: 3
  },
  // Riyadh, Saudi Arabia
  "DOH": {
    timeZone: "Asia/Qatar",
    offset: 3
  },
  // Doha, Qatar
  "JNB": {
    timeZone: "Africa/Johannesburg",
    offset: 2
  },
  // Johannesburg, South Africa
  "MCO": {
    timeZone: "Europe/Monaco",
    offset: 1
  },
  // Monaco, Monaco
  "TPE": {
    timeZone: "Asia/Taipei",
    offset: 8
  },
  // Taipei, Taiwan
  "TIA": {
    timeZone: "Europe/Tirane",
    offset: 1
  },
  // Tirana, Albania
  "PTY": {
    timeZone: "America/Panama",
    offset: -5
  },
  // Panama City, Panama
  "MCT": {
    timeZone: "Asia/Muscat",
    offset: 4
  },
  // Muscat, Oman
  "MVD": {
    timeZone: "America/Montevideo",
    offset: -3
  },
  // Montevideo, Uruguay
  "VNO": {
    timeZone: "Europe/Vilnius",
    offset: 2
  },
  // Vilnius, Lithuania
  "TYO": {
    timeZone: "Asia/Tokyo",
    offset: 9
  },
  // Tokyo, Japan
  "ZUR": {
    timeZone: "Europe/Zurich",
    offset: 1
  },
  // Zurich, Switzerland
  "DGS": {
    timeZone: "Europe/Isle_of_Man",
    offset: 0
  },
  // Douglas, Isle of Man
  "MNL": {
    timeZone: "Asia/Manila",
    offset: 8
  },
  // Manila, Philippines
  "DUS": {
    timeZone: "Europe/Berlin",
    offset: 1
  },
  // Dusseldorf, Germany
  "SEZ": {
    timeZone: "Indian/Mahe",
    offset: 4
  },
  // Victoria, Seychelles
  "NBO": {
    timeZone: "Africa/Nairobi",
    offset: 3
  },
  // Nairobi, Kenya
  "JKT": {
    timeZone: "Asia/Jakarta",
    offset: 7
  },
  // Jakarta, Indonesia
  "PAR": {
    timeZone: "Europe/Paris",
    offset: 1
  },
  // Paris, France
  "ACC": {
    timeZone: "Africa/Accra",
    offset: 0
  },
  // Accra, Ghana
  "LPB": {
    timeZone: "America/La_Paz",
    offset: -4
  },
  // La Paz, Bolivia
  "TLL": {
    timeZone: "Europe/Tallinn",
    offset: 2
  },
  // Tallinn, Estonia
  "NUU": {
    timeZone: "America/Nuuk",
    offset: -2
  },
  // Nuuk, Greenland
  "SDQ": {
    timeZone: "America/Santo_Domingo",
    offset: -4
  },
  // Santo Domingo, Dominican Republic
  "DKR": {
    timeZone: "Africa/Dakar",
    offset: 0
  },
  // Dakar, Senegal
  "HAM": {
    timeZone: "Atlantic/Bermuda",
    offset: -4
  },
  // Hamilton, Bermuda
  "KIN": {
    timeZone: "America/Jamaica",
    offset: -5
  },
  // Kingston, Jamaica
  "BUE": {
    timeZone: "America/Argentina/Buenos_Aires",
    offset: -3
  },
  // Buenos Aires, Argentina
  "BKK": {
    timeZone: "Asia/Bangkok",
    offset: 7
  },
  // Bangkok, Thailand
  "TUN": {
    timeZone: "Africa/Tunis",
    offset: 1
  },
  // Tunis, Tunisia
  "VIE": {
    timeZone: "Europe/Vienna",
    offset: 1
  },
  // Vienna, Austria
  "CAI": {
    timeZone: "Africa/Cairo",
    offset: 2
  },
  // Cairo, Egypt
  "LIM": {
    timeZone: "America/Lima",
    offset: -5
  },
  // Lima, Peru
  "BAH": {
    timeZone: "Asia/Bahrain",
    offset: 3
  },
  // Manama, Bahrain
  "LIS": {
    timeZone: "Europe/Lisbon",
    offset: 0
  },
  // Lisbon, Portugal
  "SAL": {
    timeZone: "America/El_Salvador",
    offset: -6
  },
  // San Salvador, El Salvador
  "CCS": {
    timeZone: "America/Caracas",
    offset: -4
  },
  // Caracas, Venezuela
  "BWN": {
    timeZone: "Asia/Brunei",
    offset: 8
  },
  // Bandar Seri Begawan, Brunei
  "ATH": {
    timeZone: "Europe/Athens",
    offset: 2
  },
  // Athens, Greece
  "TLV": {
    timeZone: "Asia/Jerusalem",
    offset: 2
  },
  // Tel Aviv, Israel
  "SCL": {
    timeZone: "America/Santiago",
    offset: -4
  },
  // Santiago, Chile
  "EVN": {
    timeZone: "Asia/Yerevan",
    offset: 4
  },
  // Yerevan, Armenia
  "BRU": {
    timeZone: "Europe/Brussels",
    offset: 1
  },
  // Brussels, Belgium
  "NYT": {
    timeZone: "Asia/Yangon",
    offset: 6.5
  },
  // Naypyidaw, Myanmar
  "REK": {
    timeZone: "Atlantic/Reykjavik",
    offset: 0
  },
  // Reykjavik, Iceland
  "AMS": {
    timeZone: "Europe/Amsterdam",
    offset: 1
  },
  // Amsterdam, Netherlands
  "MEX": {
    timeZone: "America/Mexico_City",
    offset: -6
  },
  // Mexico City, Mexico
  "MLE": {
    timeZone: "Indian/Maldives",
    offset: 5
  },
  // Male, Maldives
  "KUL": {
    timeZone: "Asia/Kuala_Lumpur",
    offset: 8
  },
  // Kuala Lumpur, Malaysia
  "SEL": {
    timeZone: "Asia/Seoul",
    offset: 9
  },
  // Seoul, South Korea
  "THI": {
    timeZone: "Asia/Thimphu",
    offset: 6
  },
  // Thimphu, Bhutan
  "LMS": {
    timeZone: "Asia/Nicosia",
    offset: 2
  },
  // Limassol, Cyprus
  "WLG": {
    timeZone: "Pacific/Auckland",
    offset: 12
  },
  // Wellington, New Zealand
  "ALG": {
    timeZone: "Africa/Algiers",
    offset: 1
  },
  // Algiers, Algeria
  "TBS": {
    timeZone: "Asia/Tbilisi",
    offset: 4
  },
  // Tbilisi, Georgia
  "DOD": {
    timeZone: "Africa/Dar_es_Salaam",
    offset: 3
  },
  // Dodoma, Tanzania
  "SJU": {
    timeZone: "America/Puerto_Rico",
    offset: -4
  },
  // San Juan, Puerto Rico
  "ISB": {
    timeZone: "Asia/Karachi",
    offset: 5
  },
  // Islamabad, Pakistan
  "TEG": {
    timeZone: "America/Tegucigalpa",
    offset: -6
  },
  // Tegucigalpa, Honduras
  "NAS": {
    timeZone: "America/Nassau",
    offset: -5
  },
  // Nassau, Bahamas
  "SIN": {
    timeZone: "Asia/Singapore",
    offset: 8
  },
  // Singapore, Singapore
  "OSL": {
    timeZone: "Europe/Oslo",
    offset: 1
  },
  // Oslo, Norway
  "GUA": {
    timeZone: "America/Guatemala",
    offset: -6
  },
  // Guatemala City, Guatemala
  "CHI": {
    timeZone: "America/Chicago",
    offset: -6
  },
  // Chicago, USA
  "UIO": {
    timeZone: "America/Guayaquil",
    offset: -5
  },
  // Quito, Ecuador
  "CPH": {
    timeZone: "Europe/Copenhagen",
    offset: 1
  },
  // Copenhagen, Denmark
  "TAS": {
    timeZone: "Asia/Tashkent",
    offset: 5
  },
  // Tashkent, Uzbekistan
  "AST": {
    timeZone: "Asia/Almaty",
    offset: 5
  },
  // Astana, Kazakhstan
  "WAW": {
    timeZone: "Europe/Warsaw",
    offset: 1
  },
  // Warsaw, Poland
  "SYD": {
    timeZone: "Australia/Sydney",
    offset: 10
  },
  // Sydney, Australia
  "BUD": {
    timeZone: "Europe/Budapest",
    offset: 1
  },
  // Budapest, Hungary
  "SOF": {
    timeZone: "Europe/Sofia",
    offset: 2
  },
  // Sofia, Bulgaria
  "TRT": {
    timeZone: "America/Toronto",
    offset: -5
  },
  // Toronto, Canada
  "POD": {
    timeZone: "Europe/Podgorica",
    offset: 1
  },
  // Podgorica, Montenegro
  "SKP": {
    timeZone: "Europe/Skopje",
    offset: 1
  },
  // Skopje, North Macedonia
  "DUB": {
    timeZone: "Europe/Dublin",
    offset: 0
  },
  // Dublin, Ireland
  "KTM": {
    timeZone: "Asia/Kathmandu",
    offset: 5.75
  },
  // Kathmandu, Nepal
  "RIX": {
    timeZone: "Europe/Riga",
    offset: 2
  },
  // Riga, Latvia
  "PRG": {
    timeZone: "Europe/Prague",
    offset: 1
  },
  // Prague, Czech Republic
  "ZAG": {
    timeZone: "Europe/Zagreb",
    offset: 1
  },
  // Zagreb, Croatia
  "AUH": {
    timeZone: "Asia/Dubai",
    offset: 4
  },
  // Abu Dhabi, United Arab Emirates
  "LON": {
    timeZone: "Europe/London",
    offset: 0
  },
  "GBR": {
    timeZone: "Europe/London",
    offset: 0
  },
  "HKG": {
    timeZone: "Asia/Hong_Kong",
    offset: 8
  }
};

/***/ }),

/***/ "./src/sw/constants/default_urls_constants.js":
/*!****************************************************!*\
  !*** ./src/sw/constants/default_urls_constants.js ***!
  \****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var config = __webpack_require__(/*! ../../../config */ "./config.js");
var _require = __webpack_require__(/*! @sw/constants/server_proxy_constants */ "./src/sw/constants/server_proxy_constants.js"),
  SERVER_PROXY = _require.SERVER_PROXY;
var DEF_PAST_URL_LIST = ['<local>', 'localhost', '127.0.0.1', config.API_GATEWAY_DOMAIN_DEF];
var CURRENT_PASS_URL_DOMAINS = [config.API_GATEWAY_DOMAIN_DEF, 'my.apexguard.com', config.PLATFORM_BACKEND_DOMAIN, config.API_GATEWAY_DOMAIN, SERVER_PROXY, 'user-socket.apexguard.com'];
var getDefaultPasses = function getDefaultPasses() {
  return [].concat(DEF_PAST_URL_LIST, CURRENT_PASS_URL_DOMAINS);
};
module.exports = {
  DEF_PAST_URL_LIST: DEF_PAST_URL_LIST,
  CURRENT_PASS_URL_DOMAINS: CURRENT_PASS_URL_DOMAINS,
  getDefaultPasses: getDefaultPasses
};

/***/ }),

/***/ "./src/sw/constants/listen_constants.js":
/*!**********************************************!*\
  !*** ./src/sw/constants/listen_constants.js ***!
  \**********************************************/
/***/ ((module) => {

module.exports = {
  OPEN_LOGIN: 'openLogin',
  OPEN_REGISTRATION: 'openRegistration',
  LOGIN_SUCCESS: 'loginSuccess',
  DISCONNECT: 'disconnect',
  LOGOUT: 'logout',
  ENABLE_KILL_SWITCH: 'enableKillSwitch',
  ENABLE_FIRST_LOAD_KILL_SWITCH: 'enableFirstLoadKillSwitch',
  DISABLE_KILL_SWITCH: 'disableKillSwitch',
  SET_WEBRTC_LEAK_PROTECTION: 'setWebRTCLeakProtection',
  SET_THREAT_PROTECTION: 'setThreatProtection',
  SET_WARNINGS: 'setWarnings',
  ENABLE_SPLIT_TUNNELING: 'enableSplitTunneling',
  DISABLE_SPLIT_TUNNELING: 'disableSplitTunneling',
  UPDATE_SPLIT_TUNNELING_LIST: 'updateSplitTunnelingList',
  ENABLE_SELECTIVE_PROXY: 'enableSelectiveProxy',
  DISABLE_SELECTIVE_PROXY: 'disableSelectiveProxy',
  UPDATE_SELECTIVE_PROXY_LIST: 'updateSelectiveProxyList',
  SET_PAUSE: 'setPause',
  DELETE_PAUSE: 'deletePause',
  LANGUAGE_CHANGED: 'languageChanged',
  CONNECT: 'connect',
  CONNECT_BY_SELECTED_SERVER: 'connectBySelectedServer',
  REFRESH_TOKEN: 'refreshToken',
  USER_DATA_UPDATED: 'userDataUpdated',
  OPEN_IMPORT_SETTINGS: 'openImportSettings',
  IMPORT_SETTINGS: 'importSettings',
  GET_SPOOFED_DATA: 'getSpoofedData',
  OPEN_DASHBOARD: 'openDashboard',
  OPEN_PRICING: 'openPricing',
  PROXY_STATUS_UPDATED: 'proxyStatusUpdated',
  PROCESS_DISCONNECT_UPDATED: 'processDisconnectUpdated',
  UPDATE_SUBSCRIPTION_ONCE: 'updateSubscriptionOnce',
  UPDATE_LAST_COUNTRIES: 'updateLastCountries'
};

/***/ }),

/***/ "./src/sw/constants/mapping_by_cotinent.js":
/*!*************************************************!*\
  !*** ./src/sw/constants/mapping_by_cotinent.js ***!
  \*************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   DOMAIN_MAPPING: () => (/* binding */ DOMAIN_MAPPING),
/* harmony export */   getAlphaCountryCode: () => (/* binding */ getAlphaCountryCode),
/* harmony export */   getContinentByCountry: () => (/* binding */ getContinentByCountry),
/* harmony export */   getFullUrl: () => (/* binding */ getFullUrl)
/* harmony export */ });
/* harmony import */ var _sw_constants_country_code_mapping__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @sw/constants/country_code_mapping */ "./src/sw/constants/country_code_mapping.js");
/* harmony import */ var _sw_constants_country_by_continent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @sw/constants/country_by_continent */ "./src/sw/constants/country_by_continent.js");
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js");
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_2__);
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }



var DOMAIN_MAPPING = {
  google: {
    name: "google",
    prefix: "www.google",
    tlds: [{
      tld: ".be",
      continent: "EUROPE"
    }, {
      tld: ".de",
      continent: "EUROPE"
    }, {
      tld: ".es",
      continent: "EUROPE"
    }, {
      tld: ".at",
      continent: "EUROPE"
    }, {
      tld: ".fr",
      continent: "EUROPE"
    }, {
      tld: ".it",
      continent: "EUROPE"
    }, {
      tld: ".ie",
      continent: "EUROPE"
    }, {
      tld: ".nl",
      continent: "EUROPE"
    }, {
      tld: ".pt",
      continent: "EUROPE"
    }, {
      tld: ".co.uk",
      continent: "EUROPE"
    }, {
      tld: ".sk",
      continent: "EUROPE"
    }, {
      tld: ".pl",
      continent: "EUROPE"
    }, {
      tld: ".lt",
      continent: "EUROPE"
    }, {
      tld: ".cz",
      continent: "EUROPE"
    }, {
      tld: ".ca",
      continent: "AMERICAS"
    }, {
      tld: ".us",
      continent: "AMERICAS"
    }, {
      tld: ".com.ar",
      continent: "AMERICAS"
    }, {
      tld: ".com.mx",
      continent: "AMERICAS"
    }, {
      tld: ".com.br",
      continent: "AMERICAS"
    }, {
      tld: ".cl",
      continent: "AMERICAS"
    }, {
      tld: ".co.nz",
      continent: "AUSTRALIA"
    }, {
      tld: ".com.au",
      continent: "AUSTRALIA"
    }, {
      tld: ".com.fj",
      continent: "AUSTRALIA"
    }, {
      tld: ".com.nu",
      continent: "AUSTRALIA"
    }, {
      tld: ".pn",
      continent: "AUSTRALIA"
    }, {
      tld: ".co.jp",
      continent: "ASIA"
    }, {
      tld: ".co.th",
      continent: "ASIA"
    }, {
      tld: ".co.kr",
      continent: "ASIA"
    }, {
      tld: ".in",
      continent: "ASIA"
    }, {
      tld: ".jp",
      continent: "ASIA"
    }, {
      tld: ".io",
      continent: "ASIA"
    }, {
      tld: ".sg",
      continent: "ASIA"
    }, {
      tld: ".com.sg",
      continent: "ASIA"
    }, {
      tld: ".com.vn",
      continent: "ASIA"
    }, {
      tld: ".co.za",
      continent: "AFRICA"
    }, {
      tld: ".com.sa",
      continent: "AFRICA"
    }, {
      tld: ".sh",
      continent: "AFRICA"
    }, {
      tld: ".com.eg",
      continent: "AFRICA"
    }, {
      tld: ".ae",
      continent: "AFRICA"
    }, {
      tld: ".com.et",
      continent: "AFRICA"
    }, {
      tld: ".com.gh",
      continent: "AFRICA"
    }, {
      tld: ".sc",
      continent: "AFRICA"
    }, {
      tld: ".co.tz",
      continent: "AFRICA"
    }]
  },
  amazon: {
    name: "amazon",
    prefix: "www.amazon",
    tlds: [{
      tld: ".it",
      continent: "EUROPE"
    }, {
      tld: ".de",
      continent: "EUROPE"
    }, {
      tld: ".fr",
      continent: "EUROPE"
    }, {
      tld: ".es",
      continent: "EUROPE"
    }, {
      tld: ".at",
      continent: "EUROPE"
    }, {
      tld: ".co.uk",
      continent: "EUROPE"
    }, {
      tld: ".nl",
      continent: "EUROPE"
    }, {
      tld: ".se",
      continent: "EUROPE"
    }, {
      tld: ".com.be",
      continent: "EUROPE"
    }, {
      tld: ".us",
      continent: "AMERICAS"
    }, {
      tld: ".ca",
      continent: "AMERICAS"
    }, {
      tld: ".com.mx",
      continent: "AMERICAS"
    }, {
      tld: ".com.br",
      continent: "AMERICAS"
    }, {
      tld: ".com.ar",
      continent: "AMERICAS"
    }, {
      tld: ".cl",
      continent: "AMERICAS"
    }, {
      tld: ".au",
      continent: "AUSTRALIA"
    }, {
      tld: ".net.au",
      continent: "AUSTRALIA"
    }, {
      tld: ".net.nz",
      continent: "AUSTRALIA"
    }, {
      tld: ".co.nz",
      continent: "AUSTRALIA"
    }, {
      tld: ".com.au",
      continent: "AUSTRALIA"
    }, {
      tld: ".in",
      continent: "ASIA"
    }, {
      tld: ".co.jp",
      continent: "ASIA"
    }, {
      tld: ".jp",
      continent: "ASIA"
    }, {
      tld: ".io",
      continent: "ASIA"
    }, {
      tld: ".sg",
      continent: "ASIA"
    }, {
      tld: ".com.sg",
      continent: "ASIA"
    }, {
      tld: ".ac",
      continent: "AFRICA"
    }, {
      tld: ".co.za",
      continent: "AFRICA"
    }, {
      tld: ".sh",
      continent: "AFRICA"
    }, {
      tld: ".eg",
      continent: "AFRICA"
    }, {
      tld: ".ae",
      continent: "AFRICA"
    }, {
      tld: ".sa",
      continent: "AFRICA"
    }, {
      tld: ".com.sa",
      continent: "AFRICA"
    }]
  },
  apple: {
    name: "apple",
    prefix: "www.apple",
    tlds: [{
      tld: ".it",
      continent: "EUROPE"
    }, {
      tld: ".de",
      continent: "EUROPE"
    }, {
      tld: ".fr",
      continent: "EUROPE"
    }, {
      tld: ".es",
      continent: "EUROPE"
    }, {
      tld: ".at",
      continent: "EUROPE"
    }, {
      tld: ".co.uk",
      continent: "EUROPE"
    }, {
      tld: ".nl",
      continent: "EUROPE"
    }, {
      tld: ".se",
      continent: "EUROPE"
    }, {
      tld: ".us",
      continent: "AMERICAS"
    }, {
      tld: ".ca",
      continent: "AMERICAS"
    }, {
      tld: ".com.mx",
      continent: "AMERICAS"
    }, {
      tld: ".com.br",
      continent: "AMERICAS"
    }, {
      tld: ".com.ar",
      continent: "AMERICAS"
    }, {
      tld: ".cl",
      continent: "AMERICAS"
    }, {
      tld: ".net.au",
      continent: "AUSTRALIA"
    }, {
      tld: ".co.nz",
      continent: "AUSTRALIA"
    }, {
      tld: ".com.au",
      continent: "AUSTRALIA"
    }, {
      tld: ".in",
      continent: "ASIA"
    }, {
      tld: ".co.jp",
      continent: "ASIA"
    }, {
      tld: ".jp",
      continent: "ASIA"
    }, {
      tld: ".io",
      continent: "ASIA"
    }, {
      tld: ".sg",
      continent: "ASIA"
    }, {
      tld: ".com.sg",
      continent: "ASIA"
    }, {
      tld: ".ac",
      continent: "AFRICA"
    }, {
      tld: ".co.za",
      continent: "AFRICA"
    }, {
      tld: ".ae",
      continent: "AFRICA"
    }, {
      tld: ".sa",
      continent: "AFRICA"
    }]
  }
};
function getFullUrl(continent) {
  var services = ['google', 'amazon', 'apple'];
  var service = services[Math.floor(Math.random() * services.length)];
  var serviceData = DOMAIN_MAPPING[service];
  var tlds = serviceData.tlds.filter(function (tld) {
    return tld.continent === continent;
  });
  var tld = tlds.length > 0 ? tlds[Math.floor(Math.random() * tlds.length)].tld : serviceData.tlds[Math.floor(Math.random() * serviceData.tlds.length)].tld;
  var timestamp = Date.now();
  var domain = "".concat(serviceData.prefix).concat(tld);
  if (!domain) {
    return _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_2__.API_URLS.DOMAIN_FOR_UPDATE;
  }
  return "https://".concat(domain, "/404?no-cache=").concat(timestamp);
}
function getAlphaCountryCode(country) {
  var _Object$entries$find;
  var alpha2Code = (_Object$entries$find = Object.entries(_sw_constants_country_code_mapping__WEBPACK_IMPORTED_MODULE_0__.COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2).find(function (_ref) {
    var _ref2 = _slicedToArray(_ref, 1),
      alpha3 = _ref2[0];
    return alpha3.toLowerCase() === country.toLowerCase() || _sw_constants_country_code_mapping__WEBPACK_IMPORTED_MODULE_0__.COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2[alpha3].toLowerCase() === country.toLowerCase();
  })) === null || _Object$entries$find === void 0 ? void 0 : _Object$entries$find[1];
  return alpha2Code || country.toLowerCase().substring(0, 2).toUpperCase();
}
function getContinentByCountry(country) {
  return _sw_constants_country_by_continent__WEBPACK_IMPORTED_MODULE_1__.COUNTRY_TO_CONTINENT[country] || "EUROPE";
}

/***/ }),

/***/ "./src/sw/constants/security_constants.js":
/*!************************************************!*\
  !*** ./src/sw/constants/security_constants.js ***!
  \************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var ApiClient = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var _require = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require.log,
  LOG_LEVELS = _require.LOG_LEVELS;
var cachedBlockedDomains = null;
var lastCacheUpdate = null;
var CACHE_DURATION_MS = 60 * 10 * 1000;
var getBlockedDomains = /*#__PURE__*/function () {
  var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var now, token, data, _t;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.p = _context.n) {
        case 0:
          now = Date.now();
          if (!(cachedBlockedDomains && lastCacheUpdate && now - lastCacheUpdate < CACHE_DURATION_MS)) {
            _context.n = 1;
            break;
          }
          return _context.a(2, cachedBlockedDomains);
        case 1:
          _context.n = 2;
          return StorageService.getToken();
        case 2:
          token = _context.v;
          if (token) {
            _context.n = 3;
            break;
          }
          return _context.a(2, cachedBlockedDomains);
        case 3:
          _context.p = 3;
          _context.n = 4;
          return ApiClient.getThreatProtectionData(token);
        case 4:
          data = _context.v;
          if (!(data.success && data.data)) {
            _context.n = 5;
            break;
          }
          cachedBlockedDomains = data.data;
          lastCacheUpdate = now;
          return _context.a(2, cachedBlockedDomains);
        case 5:
          _context.n = 7;
          break;
        case 6:
          _context.p = 6;
          _t = _context.v;
          log(LOG_LEVELS.ERROR, 'Error fetching blocked domains:', _t);
        case 7:
          return _context.a(2, cachedBlockedDomains || []);
      }
    }, _callee, null, [[3, 6]]);
  }));
  return function getBlockedDomains() {
    return _ref.apply(this, arguments);
  };
}();
var WEBRTC_DISABLE_NON_PROXIED_UDP = 'disable_non_proxied_udp';
var WEBRTC_DEFAULT_PUBLIC_AND_PRIVATE = 'default_public_and_private_interfaces';
function getBlockingRules(blockedDomains) {
  return blockedDomains.map(function (domain, index) {
    return {
      id: index + 1,
      priority: 1,
      action: {
        type: 'block'
      },
      condition: {
        urlFilter: domain,
        resourceTypes: ['main_frame', 'sub_frame', 'script', 'xmlhttprequest']
      }
    };
  });
}
module.exports = {
  WEBRTC_DISABLE_NON_PROXIED_UDP: WEBRTC_DISABLE_NON_PROXIED_UDP,
  WEBRTC_DEFAULT_PUBLIC_AND_PRIVATE: WEBRTC_DEFAULT_PUBLIC_AND_PRIVATE,
  getBlockedDomains: getBlockedDomains,
  getBlockingRules: getBlockingRules
};

/***/ }),

/***/ "./src/sw/constants/server_proxy_constants.js":
/*!****************************************************!*\
  !*** ./src/sw/constants/server_proxy_constants.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   PROXY_SERVERS_CITIES: () => (/* binding */ PROXY_SERVERS_CITIES),
/* harmony export */   SERVER_PROXY: () => (/* binding */ SERVER_PROXY)
/* harmony export */ });
var SERVER_PROXY = 'proxy-gateway-us-ny-01.net1.ch';
var PROXY_SERVERS_CITIES = {
  "mjkt05wv3qward.apexguard.com": "Warsaw",
  "rqytfxmuo1ska.apexguard.com": "Stockholm",
  "rz15gvu8ssofe.apexguard.com": "Sofia",
  "z0yqxv9jrcmuhb.apexguard.com": "Munich",
  "p3vnqlz9kxdusz.apexguard.com": "Dusseldorf",
  "xjwr79qhetmil6.apexguard.com": "Milan",
  "uf7lqmk20apar1.apexguard.com": "Paris",
  "l5znx8wj9ilon1.apexguard.com": "London",
  "d0axv7pgzmmanz.apexguard.com": "Manchester",
  "kf9u4zxy2pmadl.apexguard.com": "Madrid",
  "fslgh4rcu1nys.apexguard.com": "New York",
  "btlwqyfk62chy.apexguard.com": "Chicago",
  "rc898sdtxosa5.apexguard.com": "Osaka",
  "yvuc92go4jset.apexguard.com": "Seattle",
  "q9fx2ukn7dtaml.apexguard.com": "Tampa",
  "hg2mw8ctz5dalp.apexguard.com": "Dallas",
  "zmwa0nct9lad.apexguard.com": "Los Angeles"
};

/***/ }),

/***/ "./src/sw/constants/statuses_constants.js":
/*!************************************************!*\
  !*** ./src/sw/constants/statuses_constants.js ***!
  \************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   PROXY_STATUSES: () => (/* binding */ PROXY_STATUSES),
/* harmony export */   SUBSCRIPTION_STATUSES: () => (/* binding */ SUBSCRIPTION_STATUSES)
/* harmony export */ });
var PROXY_STATUSES = {
  CONNECT: 'Connect',
  DISCONNECT: 'Disconnect',
  KILL_SWITCH: 'KillSwitch',
  BLOCK_CONNECT: 'BlockConnect',
  ERROR: 'Error'
};
var SUBSCRIPTION_STATUSES = {
  TRIAL: 'trial'
};

/***/ }),

/***/ "./src/sw/constants/storage_keys_constants.js":
/*!****************************************************!*\
  !*** ./src/sw/constants/storage_keys_constants.js ***!
  \****************************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   STORAGE_KEYS: () => (/* binding */ STORAGE_KEYS)
/* harmony export */ });
var STORAGE_KEYS = {
  JWT: 'jwt',
  REFRESH_TOKEN: 'refresh_token',
  LOGGED_IN: 'loggedIn',
  USER_DATA: 'userData',
  PROXY_STATUS: 'proxyStatus',
  PREVIOUS_PROXY_STATUS: 'previousProxyStatus',
  AUTH_LINKS: 'authLinks',
  AUTH_DOMAINS: 'authDomains',
  API_GATEWAYS: 'apiGateways',
  API_GATEWAY_MAIN: 'apiGatewayMain',
  PROXY_ERROR: 'proxyError',
  GENERAL_SETTINGS: 'generalSettings',
  SETTINGS: 'settings',
  SECURITY_SETTINGS: 'securitySettings',
  CURRENT_PROXY: 'currentProxy',
  LAST_SERVER_DOMAIN: 'lastServerDomain',
  PAUSE_SETTING: 'pauseSetting',
  SELECTED_COUNTRY: 'selectedCountry',
  DEBUG_LOG: 'debugLog',
  APP_ID: 'appId',
  BLOCK_REQUEST: 'blockRequest',
  SELECTED_CITY: 'selectedCity',
  CITIES_LIST: 'apiCities',
  PRIVATE_LINKS: 'privateLinks',
  LAST_COUNTRIES: 'lastCountries',
  PING: 'ping',
  LOGS: 'logs',
  LOAD_CONNECT_STATUS: 'loadConnectStatus',
  CANCEL_CONNECT: 'cancelConnect',
  FORCE_CANCEL_CONNECT: 'forceCancelConnect',
  ANOTHER_EXTENSION_ACTIVE: 'anotherExtensionActive',
  DISABLED_PERMISSIONS_EXTENSION: 'disabledPermissionsExtension',
  UID: 'uid',
  CANCEL_DISCONNECT: 'cancelDisconnect',
  PROCESS_DISCONNECT: 'processDisconnect',
  SHOW_DISCONNECTING: 'showDisconnecting',
  NOT_CLOSED_SESSIONS: 'notClosedSessions',
  IS_NEW_PROXY_DOMAIN: 'isNewProxyDomain',
  SESSION_EXPIRED_NOTIFIED: 'sessionExpiredNotified',
  IS_NEED_UPDATE_API_DOMAIN: 'isNeedUpdateApiDomain',
  IS_API_GATEWAY_MAIN_AFTER_CHECK: 'isApiGatewayMainAfterCheck'
};

/***/ }),

/***/ "./src/sw/constants/websocketConstants.js":
/*!************************************************!*\
  !*** ./src/sw/constants/websocketConstants.js ***!
  \************************************************/
/***/ ((module) => {

var RECONNECT_DELAY_MS = 1000;
module.exports = {
  RECONNECT_DELAY_MS: RECONNECT_DELAY_MS
};

/***/ }),

/***/ "./src/sw/main/auth.js":
/*!*****************************!*\
  !*** ./src/sw/main/auth.js ***!
  \*****************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
var websocket = __webpack_require__(/*! ./websocket */ "./src/sw/main/websocket.js");
var _require = __webpack_require__(/*! ../tools/utils */ "./src/sw/tools/utils.js"),
  updateIcon = _require.updateIcon;
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var ApiClient = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
var _require2 = __webpack_require__(/*! @services/HttpRequestApi */ "./src/common/services/HttpRequestApi.js"),
  HttpRequestApi = _require2.HttpRequestApi,
  sendEndConnectRequestByServer = _require2.sendEndConnectRequestByServer;
var translateService = __webpack_require__(/*! @services/TranslateService */ "./src/common/services/TranslateService.js");
var LISTEN_CONSTANTS = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
var _require3 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require3.log,
  LOG_LEVELS = _require3.LOG_LEVELS;
var _require4 = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js"),
  PRIVATE_LINKS_TYPES = _require4.PRIVATE_LINKS_TYPES;
var _require5 = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js"),
  PROXY_STATUSES = _require5.PROXY_STATUSES;
var _require6 = __webpack_require__(/*! @common/functions/pause */ "./src/common/functions/pause.js"),
  pause = _require6.pause;
var _require7 = __webpack_require__(/*! @sw/tools/proxy_utils */ "./src/sw/tools/proxy_utils.js"),
  handleDisconnect = _require7.handleDisconnect;
var _require8 = __webpack_require__(/*! @src/tools/tools */ "./src/tools/tools.js"),
  parseJwt = _require8.parseJwt;
var _require9 = __webpack_require__(/*! @services/CountrySelectorService */ "./src/common/services/CountrySelectorService.js"),
  CountrySelectorService = _require9.CountrySelectorService;
var _require0 = __webpack_require__(/*! @common/functions/apiGatewaysForCity */ "./src/common/functions/apiGatewaysForCity.js"),
  getApiGatewaysForCity = _require0.getApiGatewaysForCity;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
var _require1 = __webpack_require__(/*! ./notification_service */ "./src/sw/main/notification_service.js"),
  notifySessionExpiredOnce = _require1.notifySessionExpiredOnce;
var _require10 = __webpack_require__(/*! @sw/main/notification_service */ "./src/sw/main/notification_service.js"),
  notifySuccessfulLogin = _require10.notifySuccessfulLogin;
var _hasNotified = /*#__PURE__*/new WeakMap();
var _isValidating = /*#__PURE__*/new WeakMap();
var _isRefreshingValidating = /*#__PURE__*/new WeakMap();
var _loginTabId = /*#__PURE__*/new WeakMap();
var _AuthManager_brand = /*#__PURE__*/new WeakSet();
var AuthManager = /*#__PURE__*/function () {
  function AuthManager() {
    _classCallCheck(this, AuthManager);
    _classPrivateMethodInitSpec(this, _AuthManager_brand);
    _classPrivateFieldInitSpec(this, _hasNotified, false);
    _classPrivateFieldInitSpec(this, _isValidating, false);
    _classPrivateFieldInitSpec(this, _isRefreshingValidating, false);
    _classPrivateFieldInitSpec(this, _loginTabId, null);
  }
  return _createClass(AuthManager, [{
    key: "validateToken",
    value: function () {
      var _validateToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(token) {
        var ignoreDouble,
          abortController,
          _args = arguments,
          _t;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              ignoreDouble = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;
              abortController = _args.length > 2 && _args[2] !== undefined ? _args[2] : null;
              if (!(_classPrivateFieldGet(_isValidating, this) && !ignoreDouble)) {
                _context.n = 1;
                break;
              }
              return _context.a(2, {
                success: false,
                error: translateService.t('validation_already'),
                disable_clear_state: true
              });
            case 1:
              _classPrivateFieldSet(_isValidating, this, true);
              _context.p = 2;
              _context.n = 3;
              return LogsService.addEvents('service.authManager.validateToken', 'start');
            case 3:
              _context.n = 4;
              return ApiClient.validateTokenWithData(token, abortController);
            case 4:
              return _context.a(2, _context.v);
            case 5:
              _context.p = 5;
              _t = _context.v;
              _context.n = 6;
              return LogsService.addEvents('service.error.authManager.validateToken', {
                success: false,
                error: _t === null || _t === void 0 ? void 0 : _t.message,
                disable_clear_state: true,
                disable_invalid_proxy: true
              });
            case 6:
              return _context.a(2, {
                success: false,
                error: _t.message,
                disable_clear_state: true,
                disable_invalid_proxy: true
              });
            case 7:
              _context.p = 7;
              _classPrivateFieldSet(_isValidating, this, false);
              return _context.f(7);
            case 8:
              return _context.a(2);
          }
        }, _callee, this, [[2, 5, 7, 8]]);
      }));
      function validateToken(_x) {
        return _validateToken.apply(this, arguments);
      }
      return validateToken;
    }()
  }, {
    key: "refreshToken",
    value: function () {
      var _refreshToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(refresh_token) {
        var disable_disconnect,
          response,
          data,
          validationResult,
          newValidationResult,
          processStatus,
          _error$message,
          _args2 = arguments,
          _t2;
        return _regenerator().w(function (_context2) {
          while (1) switch (_context2.p = _context2.n) {
            case 0:
              disable_disconnect = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : false;
              if (!_classPrivateFieldGet(_isRefreshingValidating, this)) {
                _context2.n = 2;
                break;
              }
              _context2.n = 1;
              return LogsService.addEvents('service.error.authManager.refreshToken', {
                success: false,
                error: translateService.t('validation_already'),
                disable_clear_state: true
              });
            case 1:
              return _context2.a(2, {
                success: false,
                error: translateService.t('validation_already'),
                disable_clear_state: true
              });
            case 2:
              _classPrivateFieldSet(_isRefreshingValidating, this, true);
              _context2.p = 3;
              _context2.n = 4;
              return ApiClient.refreshToken(refresh_token);
            case 4:
              response = _context2.v;
              _context2.n = 5;
              return LogsService.addEvents('service.start.authManager.refreshToken', {
                "status": response === null || response === void 0 ? void 0 : response.status
              });
            case 5:
              if (!(response.success && response.status === 200)) {
                _context2.n = 17;
                break;
              }
              data = response.data;
              _context2.n = 6;
              return this.validateToken(data.data.access_token);
            case 6:
              validationResult = _context2.v;
              if (!validationResult.success) {
                _context2.n = 9;
                break;
              }
              newValidationResult = _objectSpread(_objectSpread({}, validationResult.data.data), {}, {
                timestamp: Date.now()
              });
              websocket.updateWebSocketToken(data.data.access_token);
              _context2.n = 7;
              return StorageService.saveAuthData({
                jwt: data.data.access_token,
                refresh_token: data.data.refresh_token,
                loggedIn: true,
                userData: newValidationResult
              });
            case 7:
              _context2.n = 8;
              return LogsService.addEvents('service.saveAuthData.authManager.refreshToken', {
                success: true
              });
            case 8:
              return _context2.a(2, {
                success: true,
                data: data
              });
            case 9:
              _context2.n = 10;
              return sendEndConnectRequestByServer(null, null, true);
            case 10:
              _context2.n = 11;
              return StorageService.clearAuthData(true);
            case 11:
              _context2.n = 12;
              return StorageService.clearProxySettings();
            case 12:
              _context2.n = 13;
              return updateIcon(false);
            case 13:
              _context2.n = 14;
              return new Promise(function (resolve) {
                return browserApi.proxy.settings.clear({
                  scope: 'regular'
                }, resolve);
              });
            case 14:
              _context2.n = 15;
              return LogsService.addEvents('service.clearAuthData.authManager.refreshToken', {
                success: false,
                error: "Invalid token (status: ".concat(response === null || response === void 0 ? void 0 : response.status, ")")
              });
            case 15:
              return _context2.a(2, {
                success: false,
                error: "Invalid token (status: ".concat(response.status, ")")
              });
            case 16:
              _context2.n = 22;
              break;
            case 17:
              _context2.n = 18;
              return LogsService.addEvents('service.error_refresh_token.authManager.refreshToken', {
                success: false,
                error: "Invalid token (status: ".concat(response === null || response === void 0 ? void 0 : response.status, ")")
              });
            case 18:
              if (!(response && response.status === 401)) {
                _context2.n = 19;
                break;
              }
              return _context2.a(2, {
                success: false,
                error: "Invalid token (status: ".concat(response.status, ")")
              });
            case 19:
              if (disable_disconnect) {
                _context2.n = 21;
                break;
              }
              _context2.n = 20;
              return StorageService.getProxyStatus();
            case 20:
              processStatus = _context2.v;
              if (!(processStatus !== PROXY_STATUSES.DISCONNECT)) {
                _context2.n = 21;
                break;
              }
              _context2.n = 21;
              return handleDisconnect(function () {}, false, false, true);
            case 21:
              return _context2.a(2, {
                success: false,
                pending: true,
                error: translateService.t('timeout_response')
              });
            case 22:
              _context2.n = 26;
              break;
            case 23:
              _context2.p = 23;
              _t2 = _context2.v;
              if (!((_error$message = _t2.message) !== null && _error$message !== void 0 && _error$message.includes('timeout'))) {
                _context2.n = 24;
                break;
              }
              return _context2.a(2, {
                pending: true,
                error: 'Request time is up'
              });
            case 24:
              _context2.n = 25;
              return LogsService.addEvents('service.error.authManager.refreshToken', {
                success: false,
                error: _t2 === null || _t2 === void 0 ? void 0 : _t2.message
              });
            case 25:
              return _context2.a(2, {
                success: false,
                error: _t2.message
              });
            case 26:
              _context2.p = 26;
              _classPrivateFieldSet(_isValidating, this, false);
              _classPrivateFieldSet(_isRefreshingValidating, this, false);
              return _context2.f(26);
            case 27:
              return _context2.a(2);
          }
        }, _callee2, this, [[3, 23, 26, 27]]);
      }));
      function refreshToken(_x2) {
        return _refreshToken.apply(this, arguments);
      }
      return refreshToken;
    }()
  }, {
    key: "initializeAuth",
    value: function () {
      var _initializeAuth = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
        var _yield$StorageService, jwt, refresh_token, loggedIn, validationResult, newValidationResult, result;
        return _regenerator().w(function (_context3) {
          while (1) switch (_context3.n) {
            case 0:
              _context3.n = 1;
              return StorageService.getAuthData();
            case 1:
              _yield$StorageService = _context3.v;
              jwt = _yield$StorageService.jwt;
              refresh_token = _yield$StorageService.refresh_token;
              loggedIn = _yield$StorageService.loggedIn;
              if (loggedIn) {
                _context3.n = 2;
                break;
              }
              return _context3.a(2);
            case 2:
              _context3.n = 3;
              return this.validateToken(jwt);
            case 3:
              validationResult = _context3.v;
              if (!validationResult.success) {
                _context3.n = 6;
                break;
              }
              newValidationResult = _objectSpread(_objectSpread({}, validationResult.data.data), {}, {
                timestamp: Date.now()
              });
              _context3.n = 4;
              return StorageService.saveAuthData({
                jwt: jwt,
                refresh_token: refresh_token,
                loggedIn: true,
                userData: newValidationResult
              });
            case 4:
              _context3.n = 5;
              return LogsService.addEvents('service.validationSuccess.authManager.initializeAuth', {
                loggedIn: true
              });
            case 5:
              _context3.n = 17;
              break;
            case 6:
              _context3.n = 7;
              return LogsService.addEvents('service.errorValidation.authManager.initializeAuth', {
                status_code: validationResult === null || validationResult === void 0 ? void 0 : validationResult.status_code
              });
            case 7:
              if (!(validationResult.status_code === 401 && refresh_token)) {
                _context3.n = 13;
                break;
              }
              _context3.n = 8;
              return this.refreshToken(refresh_token);
            case 8:
              result = _context3.v;
              if (!(result.success || result.pending)) {
                _context3.n = 9;
                break;
              }
              return _context3.a(2);
            case 9:
              _context3.n = 10;
              return sendEndConnectRequestByServer();
            case 10:
              _context3.n = 11;
              return updateIcon(false);
            case 11:
              _context3.n = 12;
              return StorageService.clearAuthData();
            case 12:
              _context3.n = 16;
              break;
            case 13:
              if (refresh_token) {
                _context3.n = 16;
                break;
              }
              _context3.n = 14;
              return sendEndConnectRequestByServer();
            case 14:
              _context3.n = 15;
              return updateIcon(false);
            case 15:
              _context3.n = 16;
              return StorageService.clearAuthData();
            case 16:
              _context3.n = 17;
              return handleDisconnect(function () {}, true, false, true);
            case 17:
              return _context3.a(2);
          }
        }, _callee3, this);
      }));
      function initializeAuth() {
        return _initializeAuth.apply(this, arguments);
      }
      return initializeAuth;
    }()
  }, {
    key: "startTokenRefreshWorkerByJwt",
    value: function startTokenRefreshWorkerByJwt() {
      var _this = this;
      setInterval(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
        var loadConnectStatus, blockRequest, currentStatus, _yield$StorageService2, refresh_token, jwt, loggedIn, _result$data, result;
        return _regenerator().w(function (_context4) {
          while (1) switch (_context4.n) {
            case 0:
              _context4.n = 1;
              return StorageService.getLoadConnectStatus();
            case 1:
              loadConnectStatus = _context4.v;
              _context4.n = 2;
              return StorageService.getBlockRequest();
            case 2:
              blockRequest = _context4.v;
              _context4.n = 3;
              return StorageService.getProxyStatus();
            case 3:
              currentStatus = _context4.v;
              if (!(loadConnectStatus || blockRequest || currentStatus === PROXY_STATUSES.BLOCK_CONNECT)) {
                _context4.n = 4;
                break;
              }
              return _context4.a(2);
            case 4:
              _context4.n = 5;
              return StorageService.getAuthData();
            case 5:
              _yield$StorageService2 = _context4.v;
              refresh_token = _yield$StorageService2.refresh_token;
              jwt = _yield$StorageService2.jwt;
              loggedIn = _yield$StorageService2.loggedIn;
              if (!(!refresh_token && loggedIn)) {
                _context4.n = 10;
                break;
              }
              _context4.n = 6;
              return LogsService.addEvents('service.error_startTokenRefreshWorkerByJwt', '', 'empty refresh token');
            case 6:
              _context4.n = 7;
              return sendEndConnectRequestByServer();
            case 7:
              _context4.n = 8;
              return StorageService.clearAuthData(true);
            case 8:
              _context4.n = 9;
              return handleDisconnect(function () {}, true, false, true);
            case 9:
              return _context4.a(2);
            case 10:
              if (loggedIn) {
                _context4.n = 11;
                break;
              }
              return _context4.a(2);
            case 11:
              if (!(_assertClassBrand(_AuthManager_brand, _this, _isTokenExpiredBySettledTime).call(_this, jwt) && refresh_token)) {
                _context4.n = 17;
                break;
              }
              _context4.n = 12;
              return _this.refreshToken(refresh_token, true);
            case 12:
              result = _context4.v;
              _context4.n = 13;
              return LogsService.addEvents('service.result_startTokenRefreshWorkerByJwt', {
                'success': result === null || result === void 0 ? void 0 : result.success,
                'message': result === null || result === void 0 || (_result$data = result.data) === null || _result$data === void 0 ? void 0 : _result$data.message,
                'pending': result.pending,
                'disable_clear_state': result.disable_clear_state
              });
            case 13:
              if (!(!result.success && !result.pending && !result.disable_clear_state)) {
                _context4.n = 17;
                break;
              }
              _context4.n = 14;
              return sendEndConnectRequestByServer();
            case 14:
              _context4.n = 15;
              return StorageService.clearAuthData(true);
            case 15:
              _context4.n = 16;
              return handleDisconnect(function () {}, true, false, true);
            case 16:
              _context4.n = 17;
              return notifySessionExpiredOnce();
            case 17:
              return _context4.a(2);
          }
        }, _callee4);
      })), 20 * 1000);
    }
  }, {
    key: "handleTokenReceived",
    value: function () {
      var _handleTokenReceived = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(token, refresh_token, sendResponse, tabId) {
        var ignoreDouble,
          show_notification,
          abortController,
          validationResult,
          newValidationResult,
          auth_domain,
          newRefreshToken,
          refreshResult,
          needClearState,
          settings,
          currentProxy,
          proxyStatus,
          cityCode,
          cityInfo,
          apiGatewaysForCity,
          changeApiGateway,
          _settings,
          _args5 = arguments,
          _t3,
          _t4;
        return _regenerator().w(function (_context5) {
          while (1) switch (_context5.p = _context5.n) {
            case 0:
              ignoreDouble = _args5.length > 4 && _args5[4] !== undefined ? _args5[4] : false;
              show_notification = _args5.length > 5 && _args5[5] !== undefined ? _args5[5] : false;
              abortController = _args5.length > 6 && _args5[6] !== undefined ? _args5[6] : null;
              _classPrivateFieldSet(_loginTabId, this, tabId);
              _context5.n = 1;
              return this.validateToken(token, ignoreDouble, abortController);
            case 1:
              validationResult = _context5.v;
              log(LOG_LEVELS.INFO, 'validateToken info:', validationResult);
              _context5.n = 2;
              return LogsService.addEvents('service.validate_info', {
                'message': validationResult === null || validationResult === void 0 ? void 0 : validationResult.message
              });
            case 2:
              if (validationResult) {
                _context5.n = 4;
                break;
              }
              sendResponse({
                success: false,
                error: translateService.t('validation_failed')
              });
              _context5.n = 3;
              return LogsService.addEvents('service_error.validate_info', {
                success: false,
                error: translateService.t('validation_failed')
              });
            case 3:
              return _context5.a(2, false);
            case 4:
              if (!validationResult.success) {
                _context5.n = 19;
                break;
              }
              _context5.n = 5;
              return LogsService.addEvents('service.authManager.handleTokenReceived', {
                'validationResult.success': validationResult === null || validationResult === void 0 ? void 0 : validationResult.success
              });
            case 5:
              newValidationResult = _objectSpread(_objectSpread({}, validationResult.data.data), {}, {
                timestamp: Date.now()
              });
              _context5.n = 6;
              return StorageService.saveAuthData({
                jwt: token,
                refresh_token: refresh_token,
                loggedIn: true,
                userData: newValidationResult
              });
            case 6:
              if (!browserApi.isFireFoxBrowser()) {
                _context5.n = 11;
                break;
              }
              _context5.p = 7;
              _context5.n = 8;
              return LogsService.addEvents("action.send.".concat(LISTEN_CONSTANTS.USER_DATA_UPDATED), {
                method_send: 'handleTokenReceived'
              });
            case 8:
              _context5.n = 9;
              return browserApi.runtime.sendMessage({
                type: LISTEN_CONSTANTS.USER_DATA_UPDATED,
                payload: newValidationResult
              });
            case 9:
              _context5.n = 11;
              break;
            case 10:
              _context5.p = 10;
              _t3 = _context5.v;
              log(LOG_LEVELS.WARN, '[Background] Popup is closed. Message could`t be delivered');
              _context5.n = 11;
              return LogsService.addEvents('service.error_user_data_update', newValidationResult);
            case 11:
              if (!(_classPrivateFieldGet(_loginTabId, this) && !_classPrivateFieldGet(_hasNotified, this))) {
                _context5.n = 17;
                break;
              }
              _context5.p = 12;
              _context5.n = 13;
              return pause(200);
            case 13:
              _context5.n = 14;
              return StorageService.getAuthDomains();
            case 14:
              auth_domain = _context5.v;
              _context5.n = 15;
              return this.closeAuthSuccessTabs(auth_domain);
            case 15:
              sendResponse({
                success: true
              });
              return _context5.a(2, true);
            case 16:
              _context5.p = 16;
              _t4 = _context5.v;
              sendResponse({
                success: true
              });
              return _context5.a(2, true);
            case 17:
              if (show_notification) {
                browserApi.notifications.create({
                  type: 'basic',
                  iconUrl: 'icon.png',
                  title: translateService.t('successful_login'),
                  message: translateService.t('successfully_logged')
                });
              }
              sendResponse({
                success: true
              });
              return _context5.a(2, true);
            case 18:
              _context5.n = 44;
              break;
            case 19:
              _context5.n = 20;
              return LogsService.addEvents('service.error.authManager.handleTokenReceived', {
                'validationResult.success': validationResult === null || validationResult === void 0 ? void 0 : validationResult.success,
                'status_code': validationResult.status_code
              });
            case 20:
              if (!(validationResult.status_code === 401 && refresh_token)) {
                _context5.n = 23;
                break;
              }
              _context5.n = 21;
              return StorageService.getRefreshToken();
            case 21:
              newRefreshToken = _context5.v;
              refresh_token = newRefreshToken ? newRefreshToken : refresh_token;
              _context5.n = 22;
              return this.refreshToken(refresh_token);
            case 22:
              refreshResult = _context5.v;
              if (!(refreshResult.success || refreshResult.pending)) {
                _context5.n = 23;
                break;
              }
              sendResponse({
                success: true
              });
              return _context5.a(2, true);
            case 23:
              if (!(validationResult.status_code === 400 || validationResult.status_code === 500 || !validationResult.status_code)) {
                _context5.n = 36;
                break;
              }
              needClearState = false;
              _context5.n = 24;
              return StorageService.getSettings();
            case 24:
              settings = _context5.v;
              _context5.n = 25;
              return StorageService.getCurrentProxy();
            case 25:
              currentProxy = _context5.v;
              _context5.n = 26;
              return StorageService.getProxyStatus();
            case 26:
              proxyStatus = _context5.v;
              if (!(!currentProxy || proxyStatus === PROXY_STATUSES.DISCONNECT)) {
                _context5.n = 27;
                break;
              }
              return _context5.a(2, false);
            case 27:
              _context5.n = 28;
              return CountrySelectorService.getCityCodeForCountry(currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.country);
            case 28:
              cityCode = _context5.v;
              _context5.n = 29;
              return CountrySelectorService.getInfoByCityCode(cityCode);
            case 29:
              cityInfo = _context5.v;
              _context5.n = 30;
              return getApiGatewaysForCity(cityInfo, true);
            case 30:
              apiGatewaysForCity = _context5.v;
              changeApiGateway = !apiGatewaysForCity ? settings.changeApiGateway : false;
              if (changeApiGateway) {
                _context5.n = 33;
                break;
              }
              _context5.n = 31;
              return StorageService.saveIsNeedUpdateApiDomain(true);
            case 31:
              _context5.n = 32;
              return StorageService.saveLoadConnectStatus(true);
            case 32:
              return _context5.a(2, true);
            case 33:
              if (!(!validationResult.disable_clear_state || needClearState)) {
                _context5.n = 35;
                break;
              }
              _context5.n = 34;
              return handleDisconnect(sendResponse, true, false, true);
            case 34:
              sendResponse({
                success: false,
                error: translateService.t('invalid_connect')
              });
            case 35:
              return _context5.a(2, false);
            case 36:
              if (validationResult.disable_clear_state) {
                _context5.n = 42;
                break;
              }
              _context5.n = 37;
              return handleDisconnect(sendResponse, true, false, true);
            case 37:
              _context5.n = 38;
              return StorageService.clearAuthData();
            case 38:
              _context5.n = 39;
              return StorageService.getSettings();
            case 39:
              _settings = _context5.v;
              _context5.n = 40;
              return StorageService.saveSettings(_objectSpread(_objectSpread({}, _settings), {}, {
                autoConnect: false
              }));
            case 40:
              _context5.n = 41;
              return StorageService.savePauseSetting({
                pause: false
              });
            case 41:
              sendResponse({
                success: false,
                error: validationResult.error
              });
              return _context5.a(2, false);
            case 42:
              if (!validationResult.disable_invalid_proxy) {
                _context5.n = 44;
                break;
              }
              _context5.n = 43;
              return handleDisconnect(sendResponse, true, false, true);
            case 43:
              return _context5.a(2, false);
            case 44:
              return _context5.a(2, true);
          }
        }, _callee5, this, [[12, 16], [7, 10]]);
      }));
      function handleTokenReceived(_x3, _x4, _x5, _x6) {
        return _handleTokenReceived.apply(this, arguments);
      }
      return handleTokenReceived;
    }()
  }, {
    key: "refreshTokenByToken",
    value: function () {
      var _refreshTokenByToken = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(sendResponse) {
        var refreshTokenTemp,
          refreshToken,
          refreshResult,
          settings,
          _args6 = arguments;
        return _regenerator().w(function (_context6) {
          while (1) switch (_context6.n) {
            case 0:
              refreshTokenTemp = _args6.length > 1 && _args6[1] !== undefined ? _args6[1] : null;
              refreshToken = null;
              if (refreshTokenTemp) {
                _context6.n = 2;
                break;
              }
              _context6.n = 1;
              return StorageService.getRefreshToken();
            case 1:
              refreshToken = _context6.v;
            case 2:
              _context6.n = 3;
              return LogsService.addEvents('service.refreshTokenByToken');
            case 3:
              _context6.n = 4;
              return this.refreshToken(refreshToken, true);
            case 4:
              refreshResult = _context6.v;
              if (!(refreshResult.success || refreshResult.disable_clear_state)) {
                _context6.n = 6;
                break;
              }
              if (!refreshResult.disable_clear_state) {
                _context6.n = 5;
                break;
              }
              _context6.n = 5;
              return pause(1000);
            case 5:
              sendResponse({
                success: true
              });
              return _context6.a(2, true);
            case 6:
              if (!refreshResult.pending) {
                _context6.n = 7;
                break;
              }
              sendResponse({
                success: true
              });
              return _context6.a(2, false);
            case 7:
              _context6.n = 8;
              return handleDisconnect(sendResponse, false, false, true);
            case 8:
              _context6.n = 9;
              return StorageService.clearAuthData();
            case 9:
              _context6.n = 10;
              return StorageService.getSettings();
            case 10:
              settings = _context6.v;
              _context6.n = 11;
              return StorageService.saveSettings(_objectSpread(_objectSpread({}, settings), {}, {
                autoConnect: false
              }));
            case 11:
              _context6.n = 12;
              return StorageService.savePauseSetting({
                pause: false
              });
            case 12:
              sendResponse({
                success: false,
                error: refreshResult.error
              });
              _context6.n = 13;
              return LogsService.addEvents('service.error.refreshTokenByToken', {
                error: refreshResult === null || refreshResult === void 0 ? void 0 : refreshResult.error
              });
            case 13:
              return _context6.a(2, false);
            case 14:
              return _context6.a(2);
          }
        }, _callee6, this);
      }));
      function refreshTokenByToken(_x7) {
        return _refreshTokenByToken.apply(this, arguments);
      }
      return refreshTokenByToken;
    }()
  }, {
    key: "closeAuthSuccessTabs",
    value: function () {
      var _closeAuthSuccessTabs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(authDomains) {
        var _this2 = this;
        return _regenerator().w(function (_context7) {
          while (1) switch (_context7.n) {
            case 0:
              return _context7.a(2, new Promise(function (resolve, reject) {
                browserApi.tabs.query({}, function (tabs) {
                  if (browserApi.runtime.lastError) {
                    reject(browserApi.runtime.lastError);
                    return;
                  }
                  var tabsToRemove = [];
                  var atLeastOneRemoved = false;
                  if (_classPrivateFieldGet(_loginTabId, _this2)) {
                    var loginTab = tabs.find(function (tab) {
                      return tab.id === _classPrivateFieldGet(_loginTabId, _this2);
                    });
                    if (loginTab) {
                      tabsToRemove.push(loginTab);
                    }
                  }
                  var authTabs = tabs.filter(function (tab) {
                    return tab.url && authDomains.some(function (domain) {
                      return tab.url.startsWith("https://".concat(domain, "/auth/success"));
                    }) && (!_classPrivateFieldGet(_loginTabId, _this2) || tab.id !== _classPrivateFieldGet(_loginTabId, _this2));
                  });
                  tabsToRemove.push.apply(tabsToRemove, _toConsumableArray(authTabs));
                  if (tabsToRemove.length === 0) {
                    _classPrivateFieldSet(_loginTabId, _this2, null);
                    resolve();
                    return;
                  }
                  var pendingRemovals = tabsToRemove.length;
                  tabsToRemove.forEach(function (tab) {
                    browserApi.tabs.remove(tab.id, function () {
                      if (browserApi.runtime.lastError) {} else {
                        atLeastOneRemoved = true;
                        if (tab.id === _classPrivateFieldGet(_loginTabId, _this2)) {
                          _classPrivateFieldSet(_loginTabId, _this2, null);
                        }
                      }
                      pendingRemovals--;
                      if (pendingRemovals === 0) {
                        if (atLeastOneRemoved && !_classPrivateFieldGet(_hasNotified, _this2)) {
                          notifySuccessfulLogin();
                          _classPrivateFieldSet(_hasNotified, _this2, true);
                        }
                        resolve();
                      }
                    });
                  });
                });
              }));
          }
        }, _callee7);
      }));
      function closeAuthSuccessTabs(_x8) {
        return _closeAuthSuccessTabs.apply(this, arguments);
      }
      return closeAuthSuccessTabs;
    }()
  }, {
    key: "logout",
    value: function () {
      var _logout = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(sendResponse) {
        var data, username, password, serverDomain, request, generalSettings, settings;
        return _regenerator().w(function (_context8) {
          while (1) switch (_context8.n) {
            case 0:
              _context8.n = 1;
              return StorageService.getCurrentProxy();
            case 1:
              data = _context8.v;
              username = data.username;
              password = data.password;
              _context8.n = 2;
              return LogsService.addEvents('service.auth.logout');
            case 2:
              _context8.n = 3;
              return StorageService.getServerDomain();
            case 3:
              serverDomain = _context8.v;
              request = new HttpRequestApi(serverDomain);
              request.sendEndConnectRequest();
              _context8.n = 4;
              return StorageService.clearAuthData(true);
            case 4:
              _context8.n = 5;
              return StorageService.clearProxySettings();
            case 5:
              _classPrivateFieldSet(_loginTabId, this, null);
              _classPrivateFieldSet(_hasNotified, this, false);
              _classPrivateFieldSet(_isValidating, this, false);
              if (browserApi.isFireFoxBrowser()) {
                _context8.n = 7;
                break;
              }
              _context8.n = 6;
              return new Promise(function (resolve) {
                return browserApi.proxy.settings.clear({
                  scope: 'regular'
                }, resolve);
              });
            case 6:
              request.sendEndConnectRequest(username, password);
            case 7:
              _context8.n = 8;
              return StorageService.getGeneralSettings();
            case 8:
              generalSettings = _context8.v;
              if (generalSettings !== null && generalSettings !== void 0 && generalSettings.saveSettings) {
                _context8.n = 12;
                break;
              }
              _context8.n = 9;
              return StorageService.saveGeneralSettings({});
            case 9:
              _context8.n = 10;
              return StorageService.saveSettings({
                splitTunneling: true
              });
            case 10:
              _context8.n = 11;
              return StorageService.saveSecuritySettings({});
            case 11:
              _context8.n = 15;
              break;
            case 12:
              _context8.n = 13;
              return StorageService.getSettings();
            case 13:
              settings = _context8.v;
              _context8.n = 14;
              return StorageService.saveSettings(_objectSpread(_objectSpread({}, settings), {}, {
                autoConnect: false
              }));
            case 14:
              _context8.n = 15;
              return StorageService.savePauseSetting({
                pause: false
              });
            case 15:
              sendResponse({
                success: true
              });
            case 16:
              return _context8.a(2);
          }
        }, _callee8, this);
      }));
      function logout(_x9) {
        return _logout.apply(this, arguments);
      }
      return logout;
    }()
  }, {
    key: "handleOpenLogin",
    value: function () {
      var _handleOpenLogin = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(sendResponse) {
        var loginLink, _loginLink, _t5;
        return _regenerator().w(function (_context9) {
          while (1) switch (_context9.p = _context9.n) {
            case 0:
              _context9.p = 0;
              _context9.n = 1;
              return ApiClient.getAuthLinks();
            case 1:
              _context9.n = 2;
              return StorageService.getLoginLink();
            case 2:
              loginLink = _context9.v;
              if (loginLink) {
                _context9.n = 4;
                break;
              }
              _context9.n = 3;
              return StorageService.getLoginLink();
            case 3:
              loginLink = _context9.v;
            case 4:
              _assertClassBrand(_AuthManager_brand, this, _openLoginRegisterTab).call(this, loginLink, sendResponse);
              _context9.n = 7;
              break;
            case 5:
              _context9.p = 5;
              _t5 = _context9.v;
              _context9.n = 6;
              return StorageService.getLoginLink();
            case 6:
              _loginLink = _context9.v;
              _assertClassBrand(_AuthManager_brand, this, _openLoginRegisterTab).call(this, _loginLink, sendResponse);
            case 7:
              return _context9.a(2);
          }
        }, _callee9, this, [[0, 5]]);
      }));
      function handleOpenLogin(_x0) {
        return _handleOpenLogin.apply(this, arguments);
      }
      return handleOpenLogin;
    }()
  }, {
    key: "handleOpenRegistration",
    value: function () {
      var _handleOpenRegistration = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(sendResponse) {
        var registerLink, _registerLink, _t6;
        return _regenerator().w(function (_context0) {
          while (1) switch (_context0.p = _context0.n) {
            case 0:
              _context0.p = 0;
              _context0.n = 1;
              return LogsService.addEvents('service.handleOpenRegistration');
            case 1:
              _context0.n = 2;
              return ApiClient.getAuthLinks();
            case 2:
              _context0.n = 3;
              return StorageService.getRegisterLink();
            case 3:
              registerLink = _context0.v;
              if (registerLink) {
                _context0.n = 5;
                break;
              }
              _context0.n = 4;
              return StorageService.getRegisterLink();
            case 4:
              registerLink = _context0.v;
            case 5:
              _assertClassBrand(_AuthManager_brand, this, _openLoginRegisterTab).call(this, registerLink, sendResponse);
              _context0.n = 9;
              break;
            case 6:
              _context0.p = 6;
              _t6 = _context0.v;
              _context0.n = 7;
              return StorageService.getRegisterLink();
            case 7:
              _registerLink = _context0.v;
              _context0.n = 8;
              return LogsService.addEvents('service.error.handleOpenRegistration', _t6.message);
            case 8:
              _assertClassBrand(_AuthManager_brand, this, _openLoginRegisterTab).call(this, _registerLink, sendResponse);
            case 9:
              return _context0.a(2);
          }
        }, _callee0, this, [[0, 6]]);
      }));
      function handleOpenRegistration(_x1) {
        return _handleOpenRegistration.apply(this, arguments);
      }
      return handleOpenRegistration;
    }()
  }, {
    key: "handleTokenReceivedMessage",
    value: function () {
      var _handleTokenReceivedMessage = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(message, sendResponse) {
        return _regenerator().w(function (_context1) {
          while (1) switch (_context1.n) {
            case 0:
              _context1.n = 1;
              return this.handleTokenReceived(message.token, message.refresh_token, sendResponse, _classPrivateFieldGet(_loginTabId, this), false, message.show_notification);
            case 1:
              websocket.updateWebSocketToken(message.token);
            case 2:
              return _context1.a(2);
          }
        }, _callee1, this);
      }));
      function handleTokenReceivedMessage(_x10, _x11) {
        return _handleTokenReceivedMessage.apply(this, arguments);
      }
      return handleTokenReceivedMessage;
    }()
  }, {
    key: "handleLogout",
    value: function () {
      var _handleLogout = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(sendResponse) {
        return _regenerator().w(function (_context10) {
          while (1) switch (_context10.n) {
            case 0:
              _context10.n = 1;
              return this.logout(sendResponse);
            case 1:
              _context10.n = 2;
              return updateIcon(false);
            case 2:
              websocket.closeWebSocket(false);
            case 3:
              return _context10.a(2);
          }
        }, _callee10, this);
      }));
      function handleLogout(_x12) {
        return _handleLogout.apply(this, arguments);
      }
      return handleLogout;
    }()
  }, {
    key: "isLoginTab",
    value: function isLoginTab(tabId) {
      return _classPrivateFieldGet(_loginTabId, this) === tabId;
    }
  }, {
    key: "clearLoginTab",
    value: function clearLoginTab() {
      _classPrivateFieldSet(_loginTabId, this, null);
    }
  }, {
    key: "handlePrivateLink",
    value: function () {
      var _handlePrivateLink = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(type, sendResponse) {
        var privateLink;
        return _regenerator().w(function (_context11) {
          while (1) switch (_context11.n) {
            case 0:
              privateLink = "";
              if (privateLink) {
                _context11.n = 3;
                break;
              }
              _context11.n = 1;
              return ApiClient.getPrivateLink(type);
            case 1:
              _context11.n = 2;
              return StorageService.getPrivateLink(type);
            case 2:
              privateLink = _context11.v;
              if (!privateLink) {
                privateLink = _assertClassBrand(_AuthManager_brand, this, _getFallbackLink).call(this, type);
              }
            case 3:
              browserApi.tabs.create({
                url: privateLink + "&fallback=1"
              }, function () {
                sendResponse({
                  success: true
                });
              });
            case 4:
              return _context11.a(2);
          }
        }, _callee11, this);
      }));
      function handlePrivateLink(_x13, _x14) {
        return _handlePrivateLink.apply(this, arguments);
      }
      return handlePrivateLink;
    }()
  }]);
}();
function _isTokenExpiredBySettledTime(jwt) {
  var parseToken = parseJwt(jwt);
  if (!parseToken || !parseToken.payload || !parseToken.payload.refresh_at) {
    return true;
  }
  return parseToken.payload.refresh_at * 1000 <= Date.now();
}
function _openLoginRegisterTab(link, sendResponse) {
  var _this3 = this;
  if (link) {
    var url = "".concat(link, "&fallback=1");
    browserApi.tabs.create({
      url: url
    }, function (tab) {
      _classPrivateFieldSet(_loginTabId, _this3, tab.id);
      sendResponse({
        success: true
      });
    });
  }
}
function _getFallbackLink(type) {
  var FALLBACK_LINKS = _defineProperty(_defineProperty({}, PRIVATE_LINKS_TYPES.DASHBOARD, "https://my.apexguard.com/account/dashboard"), PRIVATE_LINKS_TYPES.PRICING, "https://my.apexguard.com/pricing");
  return FALLBACK_LINKS[type];
}
var authManager = new AuthManager();
module.exports = {
  validateToken: authManager.validateToken.bind(authManager),
  refreshToken: authManager.refreshToken.bind(authManager),
  initializeAuth: authManager.initializeAuth.bind(authManager),
  startTokenRefreshWorkerByJwt: authManager.startTokenRefreshWorkerByJwt.bind(authManager),
  handleTokenReceived: authManager.handleTokenReceived.bind(authManager),
  logout: authManager.logout.bind(authManager),
  handleOpenLogin: authManager.handleOpenLogin.bind(authManager),
  handleOpenRegistration: authManager.handleOpenRegistration.bind(authManager),
  handlePrivateLink: authManager.handlePrivateLink.bind(authManager),
  handleTokenReceivedMessage: authManager.handleTokenReceivedMessage.bind(authManager),
  handleLogout: authManager.handleLogout.bind(authManager),
  isLoginTab: authManager.isLoginTab.bind(authManager),
  clearLoginTab: authManager.clearLoginTab.bind(authManager),
  refreshTokenByToken: authManager.refreshTokenByToken.bind(authManager)
};

/***/ }),

/***/ "./src/sw/main/notification_service.js":
/*!*********************************************!*\
  !*** ./src/sw/main/notification_service.js ***!
  \*********************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var translateService = __webpack_require__(/*! @services/TranslateService */ "./src/common/services/TranslateService.js");
var _require = __webpack_require__(/*! @services/CountrySelectorService */ "./src/common/services/CountrySelectorService.js"),
  CountrySelectorService = _require.CountrySelectorService;
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var _require2 = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js"),
  CONNECT = _require2.CONNECT;
var _require3 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require3.log,
  LOG_LEVELS = _require3.LOG_LEVELS;
var _require4 = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js"),
  PROXY_STATUSES = _require4.PROXY_STATUSES;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
function createNotification(options, notificationId) {
  var defaultOptions = {
    type: 'basic',
    iconUrl: 'icon.png',
    priority: 0
  };
  var isFirefox = typeof browser !== 'undefined' && !!browser.runtime;
  var notificationOptions = _objectSpread(_objectSpread({}, defaultOptions), options);
  if (isFirefox) {
    delete notificationOptions.buttons;
  }
  var create = browserApi.notifications.create;
  try {
    if (isFirefox) {
      create(notificationId, notificationOptions)["catch"](function (err) {
        LogsService.addEvents('service.error_creating_notification', {}, err === null || err === void 0 ? void 0 : err.message);
      });
    } else {
      create(notificationId, notificationOptions, function (id) {
        if (chrome.runtime.lastError) {
          var _chrome;
          LogsService.addEvents('service.error_creating_notification', {}, (_chrome = chrome) === null || _chrome === void 0 || (_chrome = _chrome.runtime) === null || _chrome === void 0 ? void 0 : _chrome.lastError);
        }
      });
    }
  } catch (err) {
    LogsService.addEvents('service.error_creating_notification', {}, err === null || err === void 0 ? void 0 : err.message);
  }
}
function handleNotificationButtonClick(notificationId, buttonIndex, callback) {
  browserApi.notifications.onButtonClicked.addListener(function (id, btnIdx) {
    if (id === notificationId && btnIdx === buttonIndex) {
      callback();
      browserApi.notifications.clear(notificationId, function () {
        if (browserApi.runtime.lastError) {
          var _browserApi$runtime;
          log(LOG_LEVELS.ERROR, 'Error clearing notification:', browserApi.runtime.lastError);
          LogsService.addEvents('service.error_clearing_notification', {}, browserApi === null || browserApi === void 0 || (_browserApi$runtime = browserApi.runtime) === null || _browserApi$runtime === void 0 ? void 0 : _browserApi$runtime.lastError);
        } else {
          log(LOG_LEVELS.INFO, "Notification ".concat(notificationId, " cleared"));
        }
      });
    }
  });
}
function generateNotificationId(prefix) {
  return "".concat(prefix, "-").concat(Date.now());
}
function notifyVpnConnected() {
  createNotification({
    title: translateService.t('apexguard_connected'),
    message: translateService.t('apexguard_successfully_connected')
  }, generateNotificationId('vpn-connected'));
}
function notifyInsecureWebsite(handleInternalMessage) {
  var notificationId = generateNotificationId('insecure-website');
  createNotification({
    title: translateService.t('insecure_website_detected'),
    message: translateService.t('http_warning_message'),
    buttons: [{
      title: translateService.t('connect_to_vpn')
    }],
    priority: 2
  }, notificationId);
  handleNotificationButtonClick(notificationId, 0, /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var authData, country, _t;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.p = _context.n) {
        case 0:
          _context.n = 1;
          return StorageService.getAuthData();
        case 1:
          authData = _context.v;
          if (authData.jwt) {
            _context.n = 2;
            break;
          }
          createNotification({
            title: translateService.t('connection_failed'),
            message: translateService.t('please_login_to_connect')
          }, generateNotificationId('no-token-error'));
          return _context.a(2);
        case 2:
          _context.n = 3;
          return CountrySelectorService.getRandomCountry();
        case 3:
          country = _context.v;
          _context.p = 4;
          _context.n = 5;
          return LogsService.addEvents("action.send.".concat(CONNECT), {
            method_send: 'handleNotificationButtonClick'
          });
        case 5:
          _context.n = 6;
          return handleInternalMessage({
            action: CONNECT,
            country: country,
            loggedIn: authData.loggedIn,
            token: authData.jwt
          }, function (res) {
            if ((res === null || res === void 0 ? void 0 : res.status) === PROXY_STATUSES.CONNECT) {
              notifyVpnConnected();
            }
          });
        case 6:
          _context.n = 8;
          break;
        case 7:
          _context.p = 7;
          _t = _context.v;
          createNotification({
            title: translateService.t('connection_failed'),
            message: translateService.t('failed_to_connect_vpn')
          }, generateNotificationId('vpn-error'));
        case 8:
          return _context.a(2);
      }
    }, _callee, null, [[4, 7]]);
  })));
}
function notifySessionExpiredOnce() {
  return _notifySessionExpiredOnce.apply(this, arguments);
}
function _notifySessionExpiredOnce() {
  _notifySessionExpiredOnce = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    var alreadyShown;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          _context2.n = 1;
          return StorageService.getSessionExpiredNotified();
        case 1:
          alreadyShown = _context2.v;
          if (!alreadyShown) {
            _context2.n = 2;
            break;
          }
          return _context2.a(2);
        case 2:
          _context2.n = 3;
          return StorageService.saveSessionExpiredNotified(true);
        case 3:
          browserApi.notifications.create('session_expired', {
            type: 'basic',
            iconUrl: 'icon.png',
            title: translateService.t('session_expired_title', null, "Session Expired."),
            message: translateService.t('session_expired_message', null, "Your session has expired. Please log in again to continue using the service.")
          });
        case 4:
          return _context2.a(2);
      }
    }, _callee2);
  }));
  return _notifySessionExpiredOnce.apply(this, arguments);
}
function notifySuccessfulLogin() {
  browserApi.notifications.create({
    type: 'basic',
    iconUrl: 'icon.png',
    title: translateService.t('successful_login'),
    message: translateService.t('successfully_logged')
  });
}
module.exports = {
  notifyVpnConnected: notifyVpnConnected,
  notifyInsecureWebsite: notifyInsecureWebsite,
  notifySessionExpiredOnce: notifySessionExpiredOnce,
  notifySuccessfulLogin: notifySuccessfulLogin
};

/***/ }),

/***/ "./src/sw/main/ping_manager.js":
/*!*************************************!*\
  !*** ./src/sw/main/ping_manager.js ***!
  \*************************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   checkPing: () => (/* binding */ checkPing),
/* harmony export */   initializePingAction: () => (/* binding */ initializePingAction),
/* harmony export */   sendPing: () => (/* binding */ sendPing)
/* harmony export */ });
/* harmony import */ var _services_HttpRequestApi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @services/HttpRequestApi */ "./src/common/services/HttpRequestApi.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
/* harmony import */ var _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_services_StorageService__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _sw_tools_log__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js");
/* harmony import */ var _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js");
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../config */ "./config.js");
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_config__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js");
/* harmony import */ var _sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_7__);
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }








var startPingInterval = function startPingInterval() {
  var isStopped = false;
  var _checkAndPing = /*#__PURE__*/function () {
    var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
      return _regenerator().w(function (_context) {
        while (1) switch (_context.n) {
          case 0:
            if (!isStopped) {
              _context.n = 1;
              break;
            }
            return _context.a(2);
          case 1:
            _context.n = 2;
            return sendPing();
          case 2:
            if (!isStopped) {
              setTimeout(_checkAndPing, (_config__WEBPACK_IMPORTED_MODULE_4___default().PING_TIMEOUT));
            }
          case 3:
            return _context.a(2);
        }
      }, _callee);
    }));
    return function checkAndPing() {
      return _ref.apply(this, arguments);
    };
  }();
  var initialTimeout = setTimeout(_checkAndPing, 5000);
  return function () {
    isStopped = true;
    clearTimeout(initialTimeout);
  };
};
function initializePingAction() {
  try {
    return startPingInterval();
  } catch (error) {
    _services_LogsService__WEBPACK_IMPORTED_MODULE_5__["default"].addEvents('error.failed_to_initialize_auto-connect', error === null || error === void 0 ? void 0 : error.message);
    return null;
  }
}
function sendPing() {
  return _sendPing.apply(this, arguments);
}
function _sendPing() {
  _sendPing = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    var authData, isLoggedIn, isConnected, blockRequest, currentProxy, serverDomain, httpRequestApi, result, _t;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.p = _context2.n) {
        case 0:
          _context2.p = 0;
          _context2.n = 1;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().getAuthData();
        case 1:
          authData = _context2.v;
          isLoggedIn = !!(authData !== null && authData !== void 0 && authData.jwt);
          isConnected = (authData === null || authData === void 0 ? void 0 : authData.proxyStatus) === _sw_constants_statuses_constants__WEBPACK_IMPORTED_MODULE_3__.PROXY_STATUSES.CONNECT;
          _context2.n = 2;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().getBlockRequest();
        case 2:
          blockRequest = _context2.v;
          if (!(isLoggedIn && isConnected && !blockRequest)) {
            _context2.n = 8;
            break;
          }
          _context2.n = 3;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().getCurrentProxy();
        case 3:
          currentProxy = _context2.v;
          _context2.n = 4;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().getServerDomain();
        case 4:
          serverDomain = _context2.v;
          httpRequestApi = new _services_HttpRequestApi__WEBPACK_IMPORTED_MODULE_0__.HttpRequestApi(serverDomain);
          _context2.n = 5;
          return httpRequestApi.sendPingConnectRequest(currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.username, currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.password);
        case 5:
          result = _context2.v;
          _context2.n = 6;
          return checkPing(result, currentProxy, httpRequestApi);
        case 6:
          if (!_context2.v) {
            _context2.n = 7;
            break;
          }
          (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.LOG_LEVELS.INFO, 'Ping sent successfully');
          _context2.n = 7;
          return _services_LogsService__WEBPACK_IMPORTED_MODULE_5__["default"].addEvents('action.success.checkAndPing');
        case 7:
          _context2.n = 9;
          break;
        case 8:
          (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.LOG_LEVELS.INFO, 'Ping skipped: conditions not met', {
            isLoggedIn: isLoggedIn,
            isConnected: isConnected
          });
        case 9:
          _context2.n = 11;
          break;
        case 10:
          _context2.p = 10;
          _t = _context2.v;
          (0,_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.log)(_sw_tools_log__WEBPACK_IMPORTED_MODULE_2__.LOG_LEVELS.ERROR, 'Ping or auth check failed:', _t);
        case 11:
          return _context2.a(2);
      }
    }, _callee2, null, [[0, 10]]);
  }));
  return _sendPing.apply(this, arguments);
}
function checkPing(_x, _x2, _x3) {
  return _checkPing.apply(this, arguments);
}
function _checkPing() {
  _checkPing = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(response, currentProxy, httpRequestApi) {
    var isOnline, newResult, pingResponse, _t2, _t3;
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.n) {
        case 0:
          isOnline = _common_browserApi__WEBPACK_IMPORTED_MODULE_7___default().isFireFoxBrowser() ? navigator.onLine : true;
          if (isOnline) {
            _context3.n = 1;
            break;
          }
          return _context3.a(2, false);
        case 1:
          _t2 = !response;
          if (_t2) {
            _context3.n = 4;
            break;
          }
          _t3 = (response === null || response === void 0 ? void 0 : response.status) === 502;
          if (!_t3) {
            _context3.n = 3;
            break;
          }
          _context3.n = 2;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().isExistApiGateways();
        case 2:
          _t3 = _context3.v;
        case 3:
          _t2 = _t3;
        case 4:
          if (!_t2) {
            _context3.n = 11;
            break;
          }
          _context3.n = 5;
          return httpRequestApi.sendPingConnectRequest(currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.username, currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.password);
        case 5:
          newResult = _context3.v;
          _context3.n = 6;
          return fetch("https://".concat(_sw_constants_api_urls__WEBPACK_IMPORTED_MODULE_6__.API_URLS.QUICK_PING_IP));
        case 6:
          pingResponse = _context3.v;
          if (!((!newResult || (response === null || response === void 0 ? void 0 : response.status) === 502) && pingResponse.ok)) {
            _context3.n = 9;
            break;
          }
          _context3.n = 7;
          return _services_StorageService__WEBPACK_IMPORTED_MODULE_1___default().saveIsNeedUpdateApiDomain(true);
        case 7:
          _context3.n = 8;
          return _services_LogsService__WEBPACK_IMPORTED_MODULE_5__["default"].addEvents('action.error.checkAndPing', {
            newResult: newResult,
            pingResponse: pingResponse
          }, 'Error in ping. Changed apiGateway');
        case 8:
          return _context3.a(2, false);
        case 9:
          if (pingResponse.ok) {
            _context3.n = 11;
            break;
          }
          _context3.n = 10;
          return _services_LogsService__WEBPACK_IMPORTED_MODULE_5__["default"].addEvents('action.error.checkAndPing', {
            newResult: newResult,
            pingResponse: pingResponse
          }, 'Error in ping. Network is not connected');
        case 10:
          return _context3.a(2, false);
        case 11:
          return _context3.a(2, true);
      }
    }, _callee3);
  }));
  return _checkPing.apply(this, arguments);
}

/***/ }),

/***/ "./src/sw/main/proxy.js":
/*!******************************!*\
  !*** ./src/sw/main/proxy.js ***!
  \******************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var _require = __webpack_require__(/*! ../tools/utils */ "./src/sw/tools/utils.js"),
  updateIcon = _require.updateIcon;
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var _require2 = __webpack_require__(/*! @sw/main/auth */ "./src/sw/main/auth.js"),
  handleTokenReceived = _require2.handleTokenReceived;
var ApiClient = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
var _require3 = __webpack_require__(/*! @services/HttpRequestApi */ "./src/common/services/HttpRequestApi.js"),
  sendEndConnectRequestByServer = _require3.sendEndConnectRequestByServer,
  HttpRequestApi = _require3.HttpRequestApi;
var translateService = __webpack_require__(/*! @services/TranslateService */ "./src/common/services/TranslateService.js");
var _require4 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require4.log,
  LOG_LEVELS = _require4.LOG_LEVELS;
var _require5 = __webpack_require__(/*! @common/functions/generateDeviceId */ "./src/common/functions/generateDeviceId.js"),
  generateDeviceIdForProxyServer = _require5.generateDeviceIdForProxyServer;
var _require6 = __webpack_require__(/*! @sw/constants/default_urls_constants */ "./src/sw/constants/default_urls_constants.js"),
  DEF_PAST_URL_LIST = _require6.DEF_PAST_URL_LIST,
  CURRENT_PASS_URL_DOMAINS = _require6.CURRENT_PASS_URL_DOMAINS;
var _require7 = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js"),
  CONNECT = _require7.CONNECT;
var _require8 = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js"),
  PROXY_STATUSES = _require8.PROXY_STATUSES;
var _require9 = __webpack_require__(/*! @common/functions/pause */ "./src/common/functions/pause.js"),
  pause = _require9.pause;
var _require0 = __webpack_require__(/*! @common/functions/updateFirefoxProxyListener */ "./src/common/functions/updateFirefoxProxyListener.js"),
  updateFirefoxProxyListener = _require0.updateFirefoxProxyListener,
  clearFirefoxProxyListener = _require0.clearFirefoxProxyListener;
var _require1 = __webpack_require__(/*! @sw/tools/proxy_utils */ "./src/sw/tools/proxy_utils.js"),
  handleDisconnect = _require1.handleDisconnect;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
var PROXY_CURRENT_PASS_URL_DOMAINS = CURRENT_PASS_URL_DOMAINS;
var BAD_PROXY_ERRORS = ['net::ERR_TUNNEL_CONNECTION_FAILED', 'net::ERR_PROXY_CONNECTION_FAILED', 'net::ERR_PROXY_AUTH_UNSUPPORTED', 'net::ERR_EMPTY_RESPONSE'];
var excludedPrefixes = ['chrome://', 'about:', 'moz-extension://', 'edge://'];
function initializeDomains() {
  return _initializeDomains.apply(this, arguments);
}
function _initializeDomains() {
  _initializeDomains = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var auth_domain, array_domains;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          _context.n = 1;
          return StorageService.getAuthDomains();
        case 1:
          auth_domain = _context.v;
          array_domains = [].concat(_toConsumableArray(PROXY_CURRENT_PASS_URL_DOMAINS), _toConsumableArray(auth_domain));
          PROXY_CURRENT_PASS_URL_DOMAINS = _toConsumableArray(new Set(array_domains));
        case 2:
          return _context.a(2);
      }
    }, _callee);
  }));
  return _initializeDomains.apply(this, arguments);
}
initializeDomains()["catch"](function (err) {
  log(LOG_LEVELS.ERROR, 'Failed to initialize domains:', err);
  LogsService.addEvents('service.initializeDomainsProxy', err === null || err === void 0 ? void 0 : err.message);
});
function reloadAllTabs() {
  return _reloadAllTabs.apply(this, arguments);
}
function _reloadAllTabs() {
  _reloadAllTabs = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    var tabs, _t;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.p = _context2.n) {
        case 0:
          _context2.p = 0;
          _context2.n = 1;
          return browserApi.tabs.query({});
        case 1:
          tabs = _context2.v;
          _context2.n = 2;
          return Promise.all(tabs.filter(function (tab) {
            return tab.url && !excludedPrefixes.some(function (prefix) {
              return tab.url.startsWith(prefix);
            });
          }).map(function (tab) {
            return browserApi.tabs.reload(tab.id, {
              bypassCache: true
            });
          }));
        case 2:
          log(LOG_LEVELS.INFO, '[Proxy] All tabs reloaded successfully');
          _context2.n = 3;
          return LogsService.addEvents('service.reloadAllTabsProxy');
        case 3:
          _context2.n = 5;
          break;
        case 4:
          _context2.p = 4;
          _t = _context2.v;
          log(LOG_LEVELS.ERROR, '[Proxy] Error reloading tabs:', _t);
          _context2.n = 5;
          return LogsService.addEvents('service.error.reloadAllTabsProxy', _t === null || _t === void 0 ? void 0 : _t.message);
        case 5:
          return _context2.a(2);
      }
    }, _callee2, null, [[0, 4]]);
  }));
  return _reloadAllTabs.apply(this, arguments);
}
function resetProxySettings(_x) {
  return _resetProxySettings.apply(this, arguments);
}
function _resetProxySettings() {
  _resetProxySettings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(handleInternalMessage) {
    var proxyStatus, isConnected, authData, lastSelectedCountry, result, _t2;
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.p = _context3.n) {
        case 0:
          _context3.p = 0;
          _context3.n = 1;
          return LogsService.addEvents('service.resetProxySettings');
        case 1:
          _context3.n = 2;
          return StorageService.getProxyStatus();
        case 2:
          proxyStatus = _context3.v;
          isConnected = proxyStatus === PROXY_STATUSES.CONNECT;
          if (!isConnected) {
            _context3.n = 12;
            break;
          }
          if (!browserApi.isFireFoxBrowser()) {
            _context3.n = 9;
            break;
          }
          _context3.n = 3;
          return StorageService.getAuthData();
        case 3:
          authData = _context3.v;
          if (!handleInternalMessage) {
            _context3.n = 8;
            break;
          }
          _context3.n = 4;
          return StorageService.getSelectedCountry();
        case 4:
          lastSelectedCountry = _context3.v;
          _context3.n = 5;
          return StorageService.saveLoadConnectStatus(true);
        case 5:
          _context3.n = 6;
          return new Promise(function (resolve) {
            LogsService.addEvents("action.send.".concat(CONNECT), {
              method_send: 'resetProxySettings'
            });
            handleInternalMessage({
              action: CONNECT,
              country: lastSelectedCountry,
              loggedIn: authData.loggedIn,
              token: authData.jwt
            }, function (res) {
              return resolve(res);
            });
          });
        case 6:
          result = _context3.v;
          if (!((result === null || result === void 0 ? void 0 : result.status) === PROXY_STATUSES.CONNECT || result !== null && result !== void 0 && result.success)) {
            _context3.n = 7;
            break;
          }
          updateIcon(true);
          _context3.n = 8;
          break;
        case 7:
          _context3.n = 8;
          return disconnectedAfterReset();
        case 8:
          _context3.n = 11;
          break;
        case 9:
          _context3.n = 10;
          return pause(500);
        case 10:
          updateIcon(true);
        case 11:
          _context3.n = 13;
          break;
        case 12:
          _context3.n = 13;
          return disconnectedAfterReset();
        case 13:
          _context3.n = 14;
          return StorageService.saveLoadConnectStatus(false);
        case 14:
          _context3.n = 15;
          return StorageService.saveBlockRequest(false);
        case 15:
          _context3.n = 16;
          return StorageService.saveCancelConnect(false);
        case 16:
          _context3.n = 17;
          return StorageService.saveProcessDisconnect(false);
        case 17:
          _context3.n = 18;
          return StorageService.saveNotClosedSession(false);
        case 18:
          _context3.n = 19;
          return StorageService.saveIsNewProxyDomain(false);
        case 19:
          _context3.n = 20;
          return StorageService.saveIsNeedUpdateApiDomain(false);
        case 20:
          _context3.n = 21;
          return StorageService.saveIsApiGatewayMainAfterCheck(false);
        case 21:
          _context3.n = 23;
          break;
        case 22:
          _context3.p = 22;
          _t2 = _context3.v;
          _context3.n = 23;
          return LogsService.addEvents('service.error.resetProxySettings', _t2 === null || _t2 === void 0 ? void 0 : _t2.message);
        case 23:
          return _context3.a(2);
      }
    }, _callee3, null, [[0, 22]]);
  }));
  return _resetProxySettings.apply(this, arguments);
}
function disconnectedAfterReset() {
  return _disconnectedAfterReset.apply(this, arguments);
}
function _disconnectedAfterReset() {
  _disconnectedAfterReset = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4() {
    return _regenerator().w(function (_context4) {
      while (1) switch (_context4.n) {
        case 0:
          if (!browserApi.isFireFoxBrowser()) {
            _context4.n = 2;
            break;
          }
          _context4.n = 1;
          return clearFirefoxProxyListener();
        case 1:
          _context4.n = 3;
          break;
        case 2:
          _context4.n = 3;
          return browserApi.proxy.settings.clear({
            scope: 'regular'
          });
        case 3:
          _context4.n = 4;
          return sendEndConnectRequestByServer();
        case 4:
          _context4.n = 5;
          return updateIcon(false);
        case 5:
          _context4.n = 6;
          return StorageService.clearProxySettings();
        case 6:
          return _context4.a(2);
      }
    }, _callee4);
  }));
  return _disconnectedAfterReset.apply(this, arguments);
}
function getBypassList(settings) {
  var ignoreSettings = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
  return (ignoreSettings || settings.splitTunneling) && settings.splitTunnelingList && settings.splitTunnelingList.length ? [].concat(_toConsumableArray(DEF_PAST_URL_LIST), _toConsumableArray(settings.splitTunnelingList)) : DEF_PAST_URL_LIST;
}
function setProxyFirefox(_x2, _x3) {
  return _setProxyFirefox.apply(this, arguments);
}
function _setProxyFirefox() {
  _setProxyFirefox = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(callback, options) {
    var _options$host, host, _options$port, port, _options$country, country, _options$lat, lat, _options$lon, lon, _options$timeZone, timeZone, _options$offset, offset, _options$username, username, _options$password, password, scheme, settings, bypassList, abortController, changedProxyDomain, proxyForClose, currentProxy, result, authToken, refreshToken, statusResult, isNeedUpdateApiDomain, request, _settings, _t3, _t4, _t5, _t6;
    return _regenerator().w(function (_context6) {
      while (1) switch (_context6.p = _context6.n) {
        case 0:
          _options$host = options.host, host = _options$host === void 0 ? null : _options$host, _options$port = options.port, port = _options$port === void 0 ? null : _options$port, _options$country = options.country, country = _options$country === void 0 ? null : _options$country, _options$lat = options.lat, lat = _options$lat === void 0 ? null : _options$lat, _options$lon = options.lon, lon = _options$lon === void 0 ? null : _options$lon, _options$timeZone = options.timeZone, timeZone = _options$timeZone === void 0 ? null : _options$timeZone, _options$offset = options.offset, offset = _options$offset === void 0 ? null : _options$offset, _options$username = options.username, username = _options$username === void 0 ? null : _options$username, _options$password = options.password, password = _options$password === void 0 ? null : _options$password;
          scheme = 'https';
          _context6.n = 1;
          return StorageService.getSettings();
        case 1:
          _t3 = _context6.v;
          if (_t3) {
            _context6.n = 2;
            break;
          }
          _t3 = {};
        case 2:
          settings = _t3;
          bypassList = getBypassList(settings);
          log(LOG_LEVELS.INFO, '[Proxy] Setting proxy with:', {
            host: host,
            port: port,
            username: username,
            password: password
          });
          _context6.n = 3;
          return LogsService.addEvents('service.setProxyFirefox', {
            host: host,
            port: port,
            country: country
          });
        case 3:
          abortController = new AbortController();
          browserApi.storage.onChanged.addListener(/*#__PURE__*/function () {
            var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(details) {
              var _details$cancelConnec;
              return _regenerator().w(function (_context5) {
                while (1) switch (_context5.n) {
                  case 0:
                    if ((_details$cancelConnec = details.cancelConnect) !== null && _details$cancelConnec !== void 0 && _details$cancelConnec.newValue) {
                      abortController.abort('manual disconnect');
                    }
                  case 1:
                    return _context5.a(2);
                }
              }, _callee5);
            }));
            return function (_x19) {
              return _ref.apply(this, arguments);
            };
          }());
          _context6.p = 4;
          _context6.n = 5;
          return StorageService.saveBlockRequest(true);
        case 5:
          _context6.n = 6;
          return updateFirefoxProxyListener({
            scheme: scheme,
            host: host,
            port: port,
            bypassList: bypassList
          });
        case 6:
          _context6.n = 7;
          return StorageService.getIsNewProxyDomain();
        case 7:
          changedProxyDomain = _context6.v;
          _context6.n = 8;
          return StorageService.getCurrentProxy();
        case 8:
          proxyForClose = _context6.v;
          currentProxy = {
            scheme: scheme,
            host: host,
            port: port,
            username: username || "",
            password: password || "",
            country: country,
            lat: lat,
            lon: lon,
            timeZone: timeZone,
            offset: offset
          };
          _context6.n = 9;
          return StorageService.saveProxySettings({
            proxyStatus: PROXY_STATUSES.CONNECT,
            proxyError: null,
            currentProxy: currentProxy
          });
        case 9:
          _context6.n = 10;
          return checkManualCancelConnectAndDisconnect(callback);
        case 10:
          if (!_context6.v) {
            _context6.n = 11;
            break;
          }
          return _context6.a(2);
        case 11:
          browserApi.proxy.onError.addListener(function (error) {
            log(LOG_LEVELS.ERROR, "Firefox Proxy Error:", error);
            LogsService.addEvents('service.error.setProxyFirefox', error === null || error === void 0 ? void 0 : error.message);
          });
          _context6.n = 12;
          return StorageService.saveLoadConnectStatus(true);
        case 12:
          _context6.n = 13;
          return StorageService.saveBlockRequest(false);
        case 13:
          _context6.n = 14;
          return pause(500);
        case 14:
          _context6.n = 15;
          return checkManualCancelConnectAndDisconnect(callback);
        case 15:
          if (!_context6.v) {
            _context6.n = 16;
            break;
          }
          return _context6.a(2);
        case 16:
          _context6.n = 17;
          return ApiClient.getDomainForUpdate(Date.now(), currentProxy.country, abortController);
        case 17:
          result = _context6.v;
          if (result) {
            _context6.n = 20;
            break;
          }
          _context6.n = 18;
          return StorageService.saveIsNeedUpdateApiDomain(true);
        case 18:
          _context6.n = 19;
          return updateIcon(false);
        case 19:
          return _context6.a(2);
        case 20:
          _context6.n = 21;
          return checkManualCancelConnectAndDisconnect(callback);
        case 21:
          if (!_context6.v) {
            _context6.n = 22;
            break;
          }
          return _context6.a(2);
        case 22:
          _context6.n = 23;
          return pause(1000);
        case 23:
          _context6.n = 24;
          return checkManualCancelConnectAndDisconnect(callback);
        case 24:
          if (!_context6.v) {
            _context6.n = 25;
            break;
          }
          return _context6.a(2);
        case 25:
          _context6.n = 26;
          return StorageService.getToken();
        case 26:
          _t4 = _context6.v;
          if (_t4) {
            _context6.n = 27;
            break;
          }
          _t4 = "";
        case 27:
          authToken = _t4;
          _context6.n = 28;
          return StorageService.getRefreshToken();
        case 28:
          _t5 = _context6.v;
          if (_t5) {
            _context6.n = 29;
            break;
          }
          _t5 = "";
        case 29:
          refreshToken = _t5;
          _context6.n = 30;
          return handleTokenReceived(authToken, refreshToken, callback, null, false, false, abortController);
        case 30:
          statusResult = _context6.v;
          _context6.n = 31;
          return checkManualCancelConnectAndDisconnect(callback);
        case 31:
          if (!_context6.v) {
            _context6.n = 32;
            break;
          }
          return _context6.a(2);
        case 32:
          if (!statusResult) {
            _context6.n = 39;
            break;
          }
          _context6.n = 33;
          return StorageService.getIsNeedUpdateApiDomain();
        case 33:
          isNeedUpdateApiDomain = _context6.v;
          if (!isNeedUpdateApiDomain) {
            _context6.n = 34;
            break;
          }
          return _context6.a(2);
        case 34:
          _context6.n = 35;
          return StorageService.saveSelectedCountry(country);
        case 35:
          _context6.n = 36;
          return StorageService.saveSelectedAutoConnectCountry(country);
        case 36:
          _context6.n = 37;
          return StorageService.addToLastCountries(country);
        case 37:
          _context6.n = 38;
          return updateIcon(true);
        case 38:
          _context6.n = 41;
          break;
        case 39:
          _context6.n = 40;
          return clearFirefoxProxyListener();
        case 40:
          _context6.n = 41;
          return handleTokenReceived(authToken, refreshToken, callback, null);
        case 41:
          if (!changedProxyDomain) {
            _context6.n = 43;
            break;
          }
          _context6.n = 42;
          return StorageService.saveIsNewProxyDomain(false);
        case 42:
          request = new HttpRequestApi(proxyForClose.host);
          request.sendEndConnectRequest(proxyForClose.username, proxyForClose.password, true);
        case 43:
          _context6.n = 44;
          return StorageService.getSettings();
        case 44:
          _settings = _context6.v;
          if (!(_settings.locationSpoofing && _settings.autoReloadTabs)) {
            _context6.n = 45;
            break;
          }
          _context6.n = 45;
          return reloadAllTabs();
        case 45:
          _context6.n = 46;
          return StorageService.saveLoadConnectStatus(false);
        case 46:
          _context6.n = 47;
          return StorageService.saveIsApiGatewayMainAfterCheck(false);
        case 47:
          _context6.n = 51;
          break;
        case 48:
          _context6.p = 48;
          _t6 = _context6.v;
          _context6.n = 49;
          return StorageService.saveLoadConnectStatus(false);
        case 49:
          _context6.n = 50;
          return clearDataForProxy(callback, translateService.t('invalid_connect'));
        case 50:
          _context6.n = 51;
          return LogsService.addEvents('service.error.setProxyFirefoxAll', _t6 === null || _t6 === void 0 ? void 0 : _t6.message);
        case 51:
          return _context6.a(2);
      }
    }, _callee6, null, [[4, 48]]);
  }));
  return _setProxyFirefox.apply(this, arguments);
}
function setProxy(_x4, _x5) {
  return _setProxy.apply(this, arguments);
}
function _setProxy() {
  _setProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(callback, options) {
    var currentProxy, authToken, refreshToken, abortController, configPac, changedProxyDomain, proxyForClose, _t0, _t1;
    return _regenerator().w(function (_context9) {
      while (1) switch (_context9.n) {
        case 0:
          currentProxy = _objectSpread(_objectSpread({}, options), {}, {
            scheme: 'https'
          });
          _context9.n = 1;
          return StorageService.saveIsNeedUpdateApiDomain(false);
        case 1:
          _context9.n = 2;
          return StorageService.getToken();
        case 2:
          _t0 = _context9.v;
          if (_t0) {
            _context9.n = 3;
            break;
          }
          _t0 = "";
        case 3:
          authToken = _t0;
          _context9.n = 4;
          return StorageService.getRefreshToken();
        case 4:
          _t1 = _context9.v;
          if (_t1) {
            _context9.n = 5;
            break;
          }
          _t1 = "";
        case 5:
          refreshToken = _t1;
          log(LOG_LEVELS.INFO, '[Proxy] Setting proxy with:', currentProxy);
          _context9.n = 6;
          return LogsService.addEvents('service.setProxy', {
            host: currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.host,
            port: currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.port
          });
        case 6:
          abortController = new AbortController();
          browserApi.storage.onChanged.addListener(/*#__PURE__*/function () {
            var _ref2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(details) {
              var _details$cancelConnec2;
              return _regenerator().w(function (_context7) {
                while (1) switch (_context7.n) {
                  case 0:
                    if ((_details$cancelConnec2 = details.cancelConnect) !== null && _details$cancelConnec2 !== void 0 && _details$cancelConnec2.newValue) {
                      abortController.abort('manual disconnect');
                    }
                  case 1:
                    return _context7.a(2);
                }
              }, _callee7);
            }));
            return function (_x20) {
              return _ref2.apply(this, arguments);
            };
          }());
          _context9.n = 7;
          return checkManualCancelConnectAndDisconnect(callback);
        case 7:
          if (!_context9.v) {
            _context9.n = 8;
            break;
          }
          return _context9.a(2);
        case 8:
          _context9.n = 9;
          return StorageService.saveBlockRequest(true);
        case 9:
          _context9.n = 10;
          return StorageService.saveLoadConnectStatus(true);
        case 10:
          _context9.n = 11;
          return buildPacScript(currentProxy);
        case 11:
          configPac = _context9.v;
          _context9.n = 12;
          return StorageService.getIsNewProxyDomain();
        case 12:
          changedProxyDomain = _context9.v;
          _context9.n = 13;
          return StorageService.getCurrentProxy();
        case 13:
          proxyForClose = _context9.v;
          _context9.n = 14;
          return StorageService.saveProxySettings({
            proxyStatus: PROXY_STATUSES.CONNECT,
            proxyError: null,
            currentProxy: currentProxy
          });
        case 14:
          browserApi.proxy.settings.set({
            value: configPac,
            scope: 'regular'
          }, /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8() {
            var result, authTokenNew, refreshTokenNew, statusResult, proxyStatus, isNeedUpdateApiDomain, request, settings, _t7, _t8, _t9;
            return _regenerator().w(function (_context8) {
              while (1) switch (_context8.p = _context8.n) {
                case 0:
                  _context8.n = 1;
                  return StorageService.saveBlockRequest(false);
                case 1:
                  if (!browserApi.runtime.lastError) {
                    _context8.n = 4;
                    break;
                  }
                  log(LOG_LEVELS.ERROR, 'Proxy setup error:', browserApi.runtime.lastError.message);
                  _context8.n = 2;
                  return StorageService.saveProxySettings({
                    proxyStatus: 'Error',
                    proxyError: browserApi.runtime.lastError.message,
                    currentProxy: null
                  });
                case 2:
                  callback({
                    success: false,
                    status: 'Error',
                    error: browserApi.runtime.lastError.message,
                    manualDisconnect: true
                  });
                  _context8.n = 3;
                  return StorageService.saveLoadConnectStatus(false);
                case 3:
                  _context8.n = 39;
                  break;
                case 4:
                  _context8.p = 4;
                  _context8.n = 5;
                  return checkManualCancelConnectAndDisconnect(callback);
                case 5:
                  if (!_context8.v) {
                    _context8.n = 6;
                    break;
                  }
                  return _context8.a(2);
                case 6:
                  _context8.n = 7;
                  return ApiClient.getDomainForUpdate(Date.now(), currentProxy.country, abortController);
                case 7:
                  result = _context8.v;
                  if (result) {
                    _context8.n = 10;
                    break;
                  }
                  _context8.n = 8;
                  return StorageService.saveIsNeedUpdateApiDomain(true);
                case 8:
                  _context8.n = 9;
                  return updateIcon(false);
                case 9:
                  return _context8.a(2);
                case 10:
                  _context8.n = 11;
                  return checkManualCancelConnectAndDisconnect(callback);
                case 11:
                  if (!_context8.v) {
                    _context8.n = 12;
                    break;
                  }
                  return _context8.a(2);
                case 12:
                  _context8.n = 13;
                  return pause(1000);
                case 13:
                  _context8.n = 14;
                  return checkManualCancelConnectAndDisconnect(callback);
                case 14:
                  if (!_context8.v) {
                    _context8.n = 15;
                    break;
                  }
                  return _context8.a(2);
                case 15:
                  _context8.n = 16;
                  return StorageService.getToken();
                case 16:
                  _t7 = _context8.v;
                  if (_t7) {
                    _context8.n = 17;
                    break;
                  }
                  _t7 = "";
                case 17:
                  authTokenNew = _t7;
                  _context8.n = 18;
                  return StorageService.getRefreshToken();
                case 18:
                  _t8 = _context8.v;
                  if (_t8) {
                    _context8.n = 19;
                    break;
                  }
                  _t8 = "";
                case 19:
                  refreshTokenNew = _t8;
                  _context8.n = 20;
                  return handleTokenReceived(authTokenNew, refreshTokenNew, callback, null, false, false, abortController);
                case 20:
                  statusResult = _context8.v;
                  if (!statusResult) {
                    _context8.n = 27;
                    break;
                  }
                  _context8.n = 21;
                  return StorageService.getProxyStatus();
                case 21:
                  proxyStatus = _context8.v;
                  if (!(proxyStatus === PROXY_STATUSES.ERROR)) {
                    _context8.n = 23;
                    break;
                  }
                  _context8.n = 22;
                  return StorageService.clearProxySettings();
                case 22:
                  updateIcon(false);
                  return _context8.a(2);
                case 23:
                  _context8.n = 24;
                  return StorageService.getIsNeedUpdateApiDomain();
                case 24:
                  isNeedUpdateApiDomain = _context8.v;
                  if (!isNeedUpdateApiDomain) {
                    _context8.n = 25;
                    break;
                  }
                  return _context8.a(2);
                case 25:
                  updateIcon(true);
                  _context8.n = 26;
                  return updateCountryInfo(currentProxy.country);
                case 26:
                  _context8.n = 30;
                  break;
                case 27:
                  _context8.n = 28;
                  return checkManualCancelConnectAndDisconnect(callback);
                case 28:
                  if (!_context8.v) {
                    _context8.n = 29;
                    break;
                  }
                  return _context8.a(2);
                case 29:
                  _context8.n = 30;
                  return handleTokenReceived(authToken, refreshToken, callback, null);
                case 30:
                  if (!changedProxyDomain) {
                    _context8.n = 32;
                    break;
                  }
                  request = new HttpRequestApi(proxyForClose.host);
                  _context8.n = 31;
                  return StorageService.saveIsNewProxyDomain(false);
                case 31:
                  request.sendEndConnectRequest(proxyForClose.username, proxyForClose.password, true);
                case 32:
                  _context8.n = 33;
                  return StorageService.getSettings();
                case 33:
                  settings = _context8.v;
                  if (!(settings.locationSpoofing && settings.autoReloadTabs)) {
                    _context8.n = 34;
                    break;
                  }
                  _context8.n = 34;
                  return reloadAllTabs();
                case 34:
                  _context8.n = 37;
                  break;
                case 35:
                  _context8.p = 35;
                  _t9 = _context8.v;
                  _context8.n = 36;
                  return clearDataForProxy(callback, translateService.t('invalid_connect'));
                case 36:
                  _context8.n = 37;
                  return LogsService.addEvents('service.error.setProxy', _t9 === null || _t9 === void 0 ? void 0 : _t9.message);
                case 37:
                  _context8.n = 38;
                  return StorageService.saveLoadConnectStatus(false);
                case 38:
                  _context8.n = 39;
                  return StorageService.saveIsApiGatewayMainAfterCheck(false);
                case 39:
                  return _context8.a(2);
              }
            }, _callee8, null, [[4, 35]]);
          })));
        case 15:
          return _context9.a(2);
      }
    }, _callee9);
  }));
  return _setProxy.apply(this, arguments);
}
function updateCountryInfo(_x6) {
  return _updateCountryInfo.apply(this, arguments);
}
function _updateCountryInfo() {
  _updateCountryInfo = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(country) {
    return _regenerator().w(function (_context0) {
      while (1) switch (_context0.n) {
        case 0:
          _context0.n = 1;
          return Promise.all([StorageService.saveSelectedCountry(country), StorageService.saveSelectedAutoConnectCountry(country), StorageService.addToLastCountries(country)]);
        case 1:
          return _context0.a(2);
      }
    }, _callee0);
  }));
  return _updateCountryInfo.apply(this, arguments);
}
function clearDataForProxy(_x7, _x8) {
  return _clearDataForProxy.apply(this, arguments);
}
function _clearDataForProxy() {
  _clearDataForProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(callback, message) {
    return _regenerator().w(function (_context1) {
      while (1) switch (_context1.n) {
        case 0:
          _context1.n = 1;
          return StorageService.saveProxySettings({
            proxyStatus: 'Error',
            proxyError: message,
            currentProxy: null
          });
        case 1:
          callback({
            success: false,
            status: 'Error',
            error: message
          });
        case 2:
          return _context1.a(2);
      }
    }, _callee1);
  }));
  return _clearDataForProxy.apply(this, arguments);
}
function proxyAuthHandler(_x9, _x0, _x1, _x10) {
  return _proxyAuthHandler.apply(this, arguments);
}
function _proxyAuthHandler() {
  _proxyAuthHandler = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(details, callback, proxyStatus, currentProxy) {
    var isActualProxyRequest, deviceId, name, _t10;
    return _regenerator().w(function (_context10) {
      while (1) switch (_context10.p = _context10.n) {
        case 0:
          log(LOG_LEVELS.INFO, '[Proxy Auth] Proxy auth handler called:', {
            details: details,
            url: details.url,
            proxyStatus: proxyStatus,
            currentProxy: currentProxy ? {
              host: currentProxy.host,
              port: currentProxy.port,
              username: currentProxy.username,
              password: currentProxy.password,
              country: currentProxy.country
            } : null
          });
          _context10.n = 1;
          return LogsService.addEvents('service.proxyAuthHandler', {
            host: currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.host,
            port: currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.port
          });
        case 1:
          isActualProxyRequest = details.challenger && currentProxy && details.challenger.host === currentProxy.host && details.challenger.port === currentProxy.port;
          if (!(proxyStatus === PROXY_STATUSES.CONNECT && isActualProxyRequest && currentProxy.username && currentProxy.password)) {
            _context10.n = 7;
            break;
          }
          _context10.p = 2;
          _context10.n = 3;
          return generateDeviceIdForProxyServer();
        case 3:
          deviceId = _context10.v;
          name = deviceId + "|" + currentProxy.username + "|" + (currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.host);
          callback({
            authCredentials: {
              username: name,
              password: currentProxy.password
            }
          });
          _context10.n = 6;
          break;
        case 4:
          _context10.p = 4;
          _t10 = _context10.v;
          _context10.n = 5;
          return LogsService.addEvents('service.error.proxyAuthHandler', _t10.message);
        case 5:
          log(LOG_LEVELS.ERROR, '[Proxy Auth] Error generating deviceId:', _t10);
          callback({
            cancel: true
          });
        case 6:
          _context10.n = 8;
          break;
        case 7:
          if (details.statusCode === 401) {
            callback({
              authCredentials: null
            });
          } else {
            callback({
              cancel: true
            });
          }
        case 8:
          return _context10.a(2);
      }
    }, _callee10, null, [[2, 4]]);
  }));
  return _proxyAuthHandler.apply(this, arguments);
}
function proxyErrorHandler(_x11, _x12, _x13) {
  return _proxyErrorHandler.apply(this, arguments);
}
function _proxyErrorHandler() {
  _proxyErrorHandler = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(details, proxyStatus, enableKillSwitch) {
    return _regenerator().w(function (_context11) {
      while (1) switch (_context11.n) {
        case 0:
          _context11.n = 1;
          return LogsService.addEvents('service.proxyErrorHandler', {
            error: details.error,
            proxyStatus: proxyStatus
          });
        case 1:
          if (!(proxyStatus === PROXY_STATUSES.CONNECT)) {
            _context11.n = 4;
            break;
          }
          _context11.n = 2;
          return StorageService.saveProxyStatus('Error');
        case 2:
          _context11.n = 3;
          return StorageService.saveProxyError(details.error);
        case 3:
          if (BAD_PROXY_ERRORS.includes(details.error) || details.error.includes('NS_ERROR')) {
            browserApi.notifications.create({
              type: 'basic',
              iconUrl: 'icon.png',
              title: 'ApexGuard: Proxy Error',
              message: "Failed to connect to proxy: ".concat(details.error)
            });
            enableKillSwitch();
          }
        case 4:
          return _context11.a(2);
      }
    }, _callee11);
  }));
  return _proxyErrorHandler.apply(this, arguments);
}
function buildPacScript(_x14) {
  return _buildPacScript.apply(this, arguments);
}
function _buildPacScript() {
  _buildPacScript = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee12(currentProxy) {
    var settings, bypassList, _t11;
    return _regenerator().w(function (_context12) {
      while (1) switch (_context12.n) {
        case 0:
          _context12.n = 1;
          return StorageService.getSettings();
        case 1:
          _t11 = _context12.v;
          if (_t11) {
            _context12.n = 2;
            break;
          }
          _t11 = {};
        case 2:
          settings = _t11;
          bypassList = getBypassList(settings);
          return _context12.a(2, {
            mode: 'fixed_servers',
            rules: {
              singleProxy: {
                scheme: currentProxy.scheme,
                host: currentProxy.host,
                port: parseInt(currentProxy.port)
              },
              bypassList: bypassList
            }
          });
      }
    }, _callee12);
  }));
  return _buildPacScript.apply(this, arguments);
}
function updateBypassList(_x15) {
  return _updateBypassList.apply(this, arguments);
}
function _updateBypassList() {
  _updateBypassList = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee14(callback) {
    var currentProxy, proxyStatus, settings, bypassList, _settings2, configPac, _t12, _t13;
    return _regenerator().w(function (_context14) {
      while (1) switch (_context14.p = _context14.n) {
        case 0:
          _context14.n = 1;
          return StorageService.getCurrentProxy();
        case 1:
          currentProxy = _context14.v;
          _context14.n = 2;
          return StorageService.getProxyStatus();
        case 2:
          proxyStatus = _context14.v;
          _context14.n = 3;
          return LogsService.addEvents('service.updateBypassListInit');
        case 3:
          if (!(proxyStatus !== PROXY_STATUSES.CONNECT || !currentProxy || !currentProxy.host)) {
            _context14.n = 5;
            break;
          }
          _context14.n = 4;
          return LogsService.addEvents('service.updateBypassList', {
            host: currentProxy.host,
            post: currentProxy.host,
            status: proxyStatus
          });
        case 4:
          log(LOG_LEVELS.INFO, 'Cannot update bypassList: Proxy is not connected');
          callback && callback({
            success: false,
            error: 'Cannot update bypassList: Proxy is not connected',
            status: proxyStatus
          });
          return _context14.a(2);
        case 5:
          _context14.n = 6;
          return StorageService.getSettings();
        case 6:
          _t12 = _context14.v;
          if (_t12) {
            _context14.n = 7;
            break;
          }
          _t12 = {};
        case 7:
          settings = _t12;
          bypassList = getBypassList(settings);
          if (!browserApi.isFireFoxBrowser()) {
            _context14.n = 17;
            break;
          }
          _context14.p = 8;
          _context14.n = 9;
          return LogsService.addEvents('service.updateBypassListFirefox', {
            host: currentProxy.host,
            post: currentProxy.host,
            status: proxyStatus
          });
        case 9:
          log(LOG_LEVELS.INFO, 'proxy.settings.setproxy.settings.setproxy.settings.setproxy.settings.setproxy.settings.set');
          _context14.n = 10;
          return StorageService.saveBlockRequest(true);
        case 10:
          _context14.n = 11;
          return updateFirefoxProxyListener({
            scheme: currentProxy.scheme,
            host: currentProxy.host,
            port: currentProxy.port,
            bypassList: bypassList
          });
        case 11:
          _context14.n = 12;
          return StorageService.saveBlockRequest(false);
        case 12:
          _context14.n = 13;
          return StorageService.getSettings();
        case 13:
          _settings2 = _context14.v;
          if (!(_settings2.locationSpoofing && _settings2.autoReloadTabs)) {
            _context14.n = 14;
            break;
          }
          _context14.n = 14;
          return reloadAllTabs();
        case 14:
          callback && callback({
            success: true,
            status: PROXY_STATUSES.CONNECT
          });
          _context14.n = 16;
          break;
        case 15:
          _context14.p = 15;
          _t13 = _context14.v;
          callback({
            success: false,
            status: 'Error',
            error: _t13.message
          });
          _context14.n = 16;
          return LogsService.addEvents('service.error.updateBypassListFirefox', {
            error: _t13.message
          });
        case 16:
          return _context14.a(2);
        case 17:
          _context14.n = 18;
          return buildPacScript(currentProxy);
        case 18:
          configPac = _context14.v;
          _context14.n = 19;
          return StorageService.saveBlockRequest(true);
        case 19:
          browserApi.proxy.settings.set({
            value: configPac,
            scope: 'regular'
          }, /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee13() {
            var _settings3;
            return _regenerator().w(function (_context13) {
              while (1) switch (_context13.n) {
                case 0:
                  _context13.n = 1;
                  return StorageService.saveBlockRequest(false);
                case 1:
                  if (!browserApi.runtime.lastError) {
                    _context13.n = 3;
                    break;
                  }
                  _context13.n = 2;
                  return LogsService.addEvents('service.error.updateBypassList', {
                    error: browserApi.runtime.lastError.message
                  });
                case 2:
                  callback && callback({
                    success: false,
                    status: proxyStatus,
                    error: browserApi.runtime.lastError.message
                  });
                  _context13.n = 6;
                  break;
                case 3:
                  _context13.n = 4;
                  return StorageService.getSettings();
                case 4:
                  _settings3 = _context13.v;
                  if (!(_settings3.locationSpoofing && _settings3.autoReloadTabs)) {
                    _context13.n = 5;
                    break;
                  }
                  _context13.n = 5;
                  return reloadAllTabs();
                case 5:
                  callback && callback({
                    success: true,
                    status: proxyStatus
                  });
                case 6:
                  return _context13.a(2);
              }
            }, _callee13);
          })));
        case 20:
          return _context14.a(2);
      }
    }, _callee14, null, [[8, 15]]);
  }));
  return _updateBypassList.apply(this, arguments);
}
function connectProxyByParams(_x16, _x17) {
  return _connectProxyByParams.apply(this, arguments);
}
function _connectProxyByParams() {
  _connectProxyByParams = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee15(sendResponse, proxy) {
    return _regenerator().w(function (_context15) {
      while (1) switch (_context15.n) {
        case 0:
          _context15.n = 1;
          return LogsService.addEvents('service.connectProxyByParams');
        case 1:
          _context15.n = 2;
          return StorageService.existToken();
        case 2:
          if (!_context15.v) {
            _context15.n = 7;
            break;
          }
          if (!browserApi.isFireFoxBrowser()) {
            _context15.n = 4;
            break;
          }
          _context15.n = 3;
          return setProxyFirefox(sendResponse, proxy);
        case 3:
          return _context15.a(2, _context15.v);
        case 4:
          _context15.n = 5;
          return setProxy(sendResponse, proxy);
        case 5:
          return _context15.a(2, _context15.v);
        case 6:
          _context15.n = 9;
          break;
        case 7:
          sendResponse({
            success: false,
            error: translateService.t('error_not_logged_in'),
            status: translateService.t('error_not_logged_in')
          });
          _context15.n = 8;
          return LogsService.addEvents('service.error.connectProxyByParams', {
            error: translateService.t('error_not_logged_in')
          });
        case 8:
          return _context15.a(2, null);
        case 9:
          return _context15.a(2);
      }
    }, _callee15);
  }));
  return _connectProxyByParams.apply(this, arguments);
}
function checkManualCancelConnectAndDisconnectWithForce() {
  return _checkManualCancelConnectAndDisconnectWithForce.apply(this, arguments);
}
function _checkManualCancelConnectAndDisconnectWithForce() {
  _checkManualCancelConnectAndDisconnectWithForce = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee16() {
    var _t14;
    return _regenerator().w(function (_context16) {
      while (1) switch (_context16.p = _context16.n) {
        case 0:
          _context16.p = 0;
          _context16.n = 1;
          return LogsService.addEvents('service.checkManualCancelConnectAndDisconnectWithForce');
        case 1:
          _context16.n = 2;
          return StorageService.getCancelConnect();
        case 2:
          if (!_context16.v) {
            _context16.n = 5;
            break;
          }
          _context16.n = 3;
          return StorageService.saveForceCancelConnect(true);
        case 3:
          _context16.n = 4;
          return disconnectProxyWithUpdateState();
        case 4:
          return _context16.a(2, true);
        case 5:
          _context16.n = 6;
          return StorageService.saveForceCancelConnect(false);
        case 6:
          _context16.n = 7;
          return StorageService.saveCancelConnect(false);
        case 7:
          _context16.n = 8;
          return StorageService.saveLoadConnectStatus(false);
        case 8:
          _context16.n = 9;
          return StorageService.saveProcessDisconnect(false);
        case 9:
          _context16.n = 10;
          return StorageService.saveNotClosedSession(false);
        case 10:
          _context16.n = 11;
          return StorageService.saveIsApiGatewayMainAfterCheck(false);
        case 11:
          return _context16.a(2, true);
        case 12:
          _context16.p = 12;
          _t14 = _context16.v;
          _context16.n = 13;
          return LogsService.addEvents('service.error.checkManualCancelConnectAndDisconnectWithForce', {
            error: _t14.message
          });
        case 13:
          return _context16.a(2, false);
      }
    }, _callee16, null, [[0, 12]]);
  }));
  return _checkManualCancelConnectAndDisconnectWithForce.apply(this, arguments);
}
function checkManualCancelConnectAndDisconnect() {
  return _checkManualCancelConnectAndDisconnect.apply(this, arguments);
}
function _checkManualCancelConnectAndDisconnect() {
  _checkManualCancelConnectAndDisconnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee17() {
    var callback,
      forceDisconnect,
      forceCancel,
      _args17 = arguments,
      _t15,
      _t16;
    return _regenerator().w(function (_context17) {
      while (1) switch (_context17.n) {
        case 0:
          callback = _args17.length > 0 && _args17[0] !== undefined ? _args17[0] : function () {};
          forceDisconnect = _args17.length > 1 && _args17[1] !== undefined ? _args17[1] : false;
          _context17.n = 1;
          return StorageService.getForceCancelConnect();
        case 1:
          forceCancel = _context17.v;
          _context17.n = 2;
          return StorageService.getCancelConnect();
        case 2:
          _t16 = _context17.v;
          if (_t16) {
            _context17.n = 3;
            break;
          }
          _t16 = forceCancel;
        case 3:
          _t15 = _t16;
          if (_t15) {
            _context17.n = 4;
            break;
          }
          _t15 = forceDisconnect;
        case 4:
          if (!_t15) {
            _context17.n = 16;
            break;
          }
          _context17.n = 5;
          return StorageService.saveForceCancelConnect(false);
        case 5:
          if (forceCancel) {
            _context17.n = 10;
            break;
          }
          if (!forceDisconnect) {
            _context17.n = 7;
            break;
          }
          _context17.n = 6;
          return disconnectProxyWithUpdateState(function () {}, false, true, true, true);
        case 6:
          _context17.n = 8;
          break;
        case 7:
          _context17.n = 8;
          return disconnectProxyWithUpdateState(function () {}, false, true, true);
        case 8:
          _context17.n = 9;
          return StorageService.saveLoadConnectStatus(false);
        case 9:
          callback({
            success: false,
            status: PROXY_STATUSES.DISCONNECT,
            manualDisconnect: true
          });
        case 10:
          _context17.n = 11;
          return StorageService.saveCancelConnect(false);
        case 11:
          _context17.n = 12;
          return StorageService.saveForceCancelConnect(false);
        case 12:
          _context17.n = 13;
          return StorageService.saveProcessDisconnect(false);
        case 13:
          _context17.n = 14;
          return StorageService.saveNotClosedSession(false);
        case 14:
          _context17.n = 15;
          return StorageService.saveIsApiGatewayMainAfterCheck(false);
        case 15:
          return _context17.a(2, true);
        case 16:
          return _context17.a(2, false);
      }
    }, _callee17);
  }));
  return _checkManualCancelConnectAndDisconnect.apply(this, arguments);
}
function clearKillSwitch(_x18) {
  return _clearKillSwitch.apply(this, arguments);
}
function _clearKillSwitch() {
  _clearKillSwitch = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee19(callback) {
    var authData, generalSettings, _t17, _t18, _t19, _t20;
    return _regenerator().w(function (_context19) {
      while (1) switch (_context19.p = _context19.n) {
        case 0:
          _context19.n = 1;
          return StorageService.getAuthData();
        case 1:
          authData = _context19.v;
          _context19.n = 2;
          return StorageService.getGeneralSettings();
        case 2:
          generalSettings = _context19.v;
          _context19.n = 3;
          return LogsService.addEvents('service.clearKillSwitch');
        case 3:
          _t17 = authData.proxyStatus === PROXY_STATUSES.KILL_SWITCH;
          if (_t17) {
            _context19.n = 7;
            break;
          }
          _t18 = !authData.loggedIn;
          if (!_t18) {
            _context19.n = 6;
            break;
          }
          _context19.n = 4;
          return StorageService.getSettingsKillSwitch();
        case 4:
          _t19 = _context19.v;
          if (_t19) {
            _context19.n = 5;
            break;
          }
          _t19 = browserApi.isFireFoxBrowser() && !generalSettings.saveSettings;
        case 5:
          _t18 = _t19;
        case 6:
          _t17 = _t18;
        case 7:
          if (!_t17) {
            _context19.n = 16;
            break;
          }
          if (!browserApi.isFireFoxBrowser()) {
            _context19.n = 15;
            break;
          }
          _context19.p = 8;
          _context19.n = 9;
          return clearFirefoxProxyListener();
        case 9:
          _context19.n = 10;
          return StorageService.clearProxyStorage();
        case 10:
          _context19.n = 11;
          return updateIcon(false);
        case 11:
          callback && callback({
            status: PROXY_STATUSES.DISCONNECT
          });
          _context19.n = 14;
          break;
        case 12:
          _context19.p = 12;
          _t20 = _context19.v;
          _context19.n = 13;
          return LogsService.addEvents('service.error.clearKillSwitch', _t20.message);
        case 13:
          log(LOG_LEVELS.ERROR, 'Firefox clearKillSwitch error:', _t20);
        case 14:
          _context19.n = 16;
          break;
        case 15:
          browserApi.proxy.settings.clear({
            scope: 'regular'
          }, /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee18() {
            return _regenerator().w(function (_context18) {
              while (1) switch (_context18.n) {
                case 0:
                  _context18.n = 1;
                  return StorageService.clearProxyStorage();
                case 1:
                  _context18.n = 2;
                  return updateIcon(false);
                case 2:
                  callback && callback({
                    status: PROXY_STATUSES.DISCONNECT
                  });
                case 3:
                  return _context18.a(2);
              }
            }, _callee18);
          })));
        case 16:
          return _context19.a(2);
      }
    }, _callee19, null, [[8, 12]]);
  }));
  return _clearKillSwitch.apply(this, arguments);
}
function disconnectProxyWithUpdateState() {
  return _disconnectProxyWithUpdateState.apply(this, arguments);
}
function _disconnectProxyWithUpdateState() {
  _disconnectProxyWithUpdateState = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee20() {
    var sendResponse,
      disconnect_with_error,
      ignore_status_killswitch,
      isCheckCancel,
      manual_disconnect,
      _args20 = arguments,
      _t21,
      _t22;
    return _regenerator().w(function (_context20) {
      while (1) switch (_context20.p = _context20.n) {
        case 0:
          sendResponse = _args20.length > 0 && _args20[0] !== undefined ? _args20[0] : function () {};
          disconnect_with_error = _args20.length > 1 && _args20[1] !== undefined ? _args20[1] : false;
          ignore_status_killswitch = _args20.length > 2 && _args20[2] !== undefined ? _args20[2] : true;
          isCheckCancel = _args20.length > 3 && _args20[3] !== undefined ? _args20[3] : false;
          manual_disconnect = _args20.length > 4 && _args20[4] !== undefined ? _args20[4] : false;
          _context20.p = 1;
          if (isCheckCancel) {
            _context20.n = 3;
            break;
          }
          _context20.n = 2;
          return StorageService.saveProcessDisconnect(Date.now());
        case 2:
          _context20.n = 4;
          break;
        case 3:
          '';
        case 4:
          _context20.n = 5;
          return handleDisconnect(sendResponse, disconnect_with_error, ignore_status_killswitch, isCheckCancel, manual_disconnect);
        case 5:
          _t21 = ApiClient;
          _context20.n = 6;
          return StorageService.getToken();
        case 6:
          _context20.n = 7;
          return _t21.getMyIP.call(_t21, _context20.v);
        case 7:
          _context20.n = 8;
          return LogsService.addEvents('service.disconnectProxyWithUpdateState');
        case 8:
          _context20.n = 10;
          break;
        case 9:
          _context20.p = 9;
          _t22 = _context20.v;
        case 10:
          _context20.p = 10;
          _context20.n = 11;
          return StorageService.saveProcessDisconnect(false);
        case 11:
          _context20.n = 12;
          return StorageService.saveCancelDisconnect(false);
        case 12:
          _context20.n = 13;
          return StorageService.saveLoadConnectStatus(false);
        case 13:
          _context20.n = 14;
          return StorageService.saveIsApiGatewayMainAfterCheck(false);
        case 14:
          return _context20.f(10);
        case 15:
          return _context20.a(2);
      }
    }, _callee20, null, [[1, 9, 10, 15]]);
  }));
  return _disconnectProxyWithUpdateState.apply(this, arguments);
}
module.exports = {
  resetProxySettings: resetProxySettings,
  proxyAuthHandler: proxyAuthHandler,
  proxyErrorHandler: proxyErrorHandler,
  connectProxyByParams: connectProxyByParams,
  updateBypassList: updateBypassList,
  checkManualCancelConnectAndDisconnect: checkManualCancelConnectAndDisconnect,
  checkManualCancelConnectAndDisconnectWithForce: checkManualCancelConnectAndDisconnectWithForce,
  clearKillSwitch: clearKillSwitch,
  disconnectProxyWithUpdateState: disconnectProxyWithUpdateState,
  reloadAllTabs: reloadAllTabs
};

/***/ }),

/***/ "./src/sw/main/websocket.js":
/*!**********************************!*\
  !*** ./src/sw/main/websocket.js ***!
  \**********************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
function _classCallCheck(a, n) { if (!(a instanceof n)) throw new TypeError("Cannot call a class as a function"); }
function _defineProperties(e, r) { for (var t = 0; t < r.length; t++) { var o = r[t]; o.enumerable = o.enumerable || !1, o.configurable = !0, "value" in o && (o.writable = !0), Object.defineProperty(e, _toPropertyKey(o.key), o); } }
function _createClass(e, r, t) { return r && _defineProperties(e.prototype, r), t && _defineProperties(e, t), Object.defineProperty(e, "prototype", { writable: !1 }), e; }
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
function _classPrivateMethodInitSpec(e, a) { _checkPrivateRedeclaration(e, a), a.add(e); }
function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
var _require = __webpack_require__(/*! ../constants/websocketConstants */ "./src/sw/constants/websocketConstants.js"),
  RECONNECT_DELAY_MS = _require.RECONNECT_DELAY_MS;
var _require2 = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js"),
  LOGOUT = _require2.LOGOUT,
  CONNECT = _require2.CONNECT,
  DISCONNECT = _require2.DISCONNECT,
  REFRESH_TOKEN = _require2.REFRESH_TOKEN;
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var config = __webpack_require__(/*! ../../../config */ "./config.js");
var _require3 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require3.log,
  LOG_LEVELS = _require3.LOG_LEVELS;
var _require4 = __webpack_require__(/*! @common/browser_storages/browser_storage */ "./src/common/browser_storages/browser_storage.js"),
  removeStorageAsync = _require4.removeStorageAsync;
var _require5 = __webpack_require__(/*! @sw/constants/storage_keys_constants */ "./src/sw/constants/storage_keys_constants.js"),
  STORAGE_KEYS = _require5.STORAGE_KEYS;
var _require6 = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js"),
  PROXY_STATUSES = _require6.PROXY_STATUSES;
var _require7 = __webpack_require__(/*! @common/functions/checkSubscriptions */ "./src/common/functions/checkSubscriptions.js"),
  initSubscriptionChecker = _require7.initSubscriptionChecker;
var _require8 = __webpack_require__(/*! @sw/tools/utils */ "./src/sw/tools/utils.js"),
  updateIcon = _require8.updateIcon;
var _require9 = __webpack_require__(/*! @services/CountrySelectorService */ "./src/common/services/CountrySelectorService.js"),
  CountrySelectorService = _require9.CountrySelectorService;
var _require0 = __webpack_require__(/*! @common/functions/apiGatewaysForCity */ "./src/common/functions/apiGatewaysForCity.js"),
  getApiGatewaysForCity = _require0.getApiGatewaysForCity;
var ApiClient = __webpack_require__(/*! @services/ApiClient */ "./src/common/services/ApiClient.js");
var _require1 = __webpack_require__(/*! @sw/main/ping_manager */ "./src/sw/main/ping_manager.js"),
  sendPing = _require1.sendPing;
var _require10 = __webpack_require__(/*! @common/functions/checkApiGatewaysReconnect */ "./src/common/functions/checkApiGatewaysReconnect.js"),
  selectNextApiGatewayMain = _require10.selectNextApiGatewayMain;
var WEBSOCKET_URL = config.WEBSOCKET_URL;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
var instance = null;
var WEBSOCKET_ERRORS = ['net::ERR_PROXY_CONNECTION_FAILED', 'net::ERR_NETWORK_CHANGED', 'net::ERR_NAME_NOT_RESOLVED'];
var _socket = /*#__PURE__*/new WeakMap();
var _reconnect = /*#__PURE__*/new WeakMap();
var _internalHandler = /*#__PURE__*/new WeakMap();
var _cur_token = /*#__PURE__*/new WeakMap();
var _timeoutReconnect = /*#__PURE__*/new WeakMap();
var _WebSocketManager_brand = /*#__PURE__*/new WeakSet();
var WebSocketManager = /*#__PURE__*/function () {
  function WebSocketManager() {
    _classCallCheck(this, WebSocketManager);
    _classPrivateMethodInitSpec(this, _WebSocketManager_brand);
    _classPrivateFieldInitSpec(this, _socket, null);
    _classPrivateFieldInitSpec(this, _reconnect, true);
    _classPrivateFieldInitSpec(this, _internalHandler, null);
    _classPrivateFieldInitSpec(this, _cur_token, '');
    _classPrivateFieldInitSpec(this, _timeoutReconnect, null);
    if (instance) {
      return instance;
    }
    instance = this;
    this.initializeWebSocket = this.initializeWebSocket.bind(this);
    this.updateWebSocketToken = this.updateWebSocketToken.bind(this);
    this.closeWebSocket = this.closeWebSocket.bind(this);
  }
  return _createClass(WebSocketManager, [{
    key: "initializeWebSocket",
    value: function () {
      var _initializeWebSocket = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(internalHandler) {
        var _classPrivateFieldGet2, _t;
        return _regenerator().w(function (_context) {
          while (1) switch (_context.p = _context.n) {
            case 0:
              _classPrivateFieldSet(_internalHandler, this, internalHandler);
              _context.p = 1;
              _context.n = 2;
              return LogsService.addEvents('service.initializeWebSocket');
            case 2:
              if (!(((_classPrivateFieldGet2 = _classPrivateFieldGet(_socket, this)) === null || _classPrivateFieldGet2 === void 0 ? void 0 : _classPrivateFieldGet2.readyState) === WebSocket.OPEN)) {
                _context.n = 3;
                break;
              }
              return _context.a(2);
            case 3:
              _classPrivateFieldSet(_socket, this, new WebSocket(WEBSOCKET_URL));
              _classPrivateFieldSet(_reconnect, this, true);
              _classPrivateFieldGet(_socket, this).onopen = _assertClassBrand(_WebSocketManager_brand, this, _handleOpen).bind(this);
              _classPrivateFieldGet(_socket, this).onmessage = _assertClassBrand(_WebSocketManager_brand, this, _handleMessage).bind(this);
              _classPrivateFieldGet(_socket, this).onerror = _assertClassBrand(_WebSocketManager_brand, this, _handleError).bind(this);
              _classPrivateFieldGet(_socket, this).onclose = _assertClassBrand(_WebSocketManager_brand, this, _handleClose).bind(this);
              _context.n = 5;
              break;
            case 4:
              _context.p = 4;
              _t = _context.v;
              log(LOG_LEVELS.ERROR, 'Error init WebSocket:', _t);
              _context.n = 5;
              return LogsService.addEvents('service.error.initializeWebSocket', _t === null || _t === void 0 ? void 0 : _t.message);
            case 5:
              return _context.a(2);
          }
        }, _callee, this, [[1, 4]]);
      }));
      function initializeWebSocket(_x) {
        return _initializeWebSocket.apply(this, arguments);
      }
      return initializeWebSocket;
    }()
  }, {
    key: "updateWebSocketToken",
    value: function updateWebSocketToken(token) {
      var _classPrivateFieldGet3, _classPrivateFieldGet4;
      LogsService.addEvents('service.websocketUpdate');
      if (!token) {
        LogsService.addEvents('service.websocketUpdateEmptyToken');
        return;
      }
      if (_classPrivateFieldGet(_cur_token, this) === token) {
        LogsService.addEvents('service.websocketUpdateCurToken');
        return;
      }
      if (((_classPrivateFieldGet3 = _classPrivateFieldGet(_socket, this)) === null || _classPrivateFieldGet3 === void 0 ? void 0 : _classPrivateFieldGet3.readyState) === WebSocket.CONNECTING) {
        return;
      }
      if (((_classPrivateFieldGet4 = _classPrivateFieldGet(_socket, this)) === null || _classPrivateFieldGet4 === void 0 ? void 0 : _classPrivateFieldGet4.readyState) === WebSocket.OPEN) {
        _classPrivateFieldSet(_cur_token, this, token);
        _assertClassBrand(_WebSocketManager_brand, this, _send).call(this, {
          access_token: token
        });
      } else {
        this.initializeWebSocket(_classPrivateFieldGet(_internalHandler, this));
      }
    }
  }, {
    key: "closeWebSocket",
    value: function closeWebSocket() {
      var reconnect = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
      _classPrivateFieldSet(_reconnect, this, reconnect);
      if (_classPrivateFieldGet(_socket, this) && _classPrivateFieldGet(_socket, this).readyState !== WebSocket.CLOSED && _classPrivateFieldGet(_socket, this).readyState !== WebSocket.CLOSING) {
        _classPrivateFieldGet(_socket, this).close();
        LogsService.addEvents('service.closeWebSocket', '', 'Connection closed explicitly');
      } else {
        LogsService.addEvents('service.closeWebSocket', '', 'Already closed or closing');
      }
      _classPrivateFieldSet(_socket, this, null);
    }
  }]);
}();
function _handleOpen() {
  return _handleOpen2.apply(this, arguments);
}
function _handleOpen2() {
  _handleOpen2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
    var authData, token;
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.n) {
        case 0:
          _context3.n = 1;
          return StorageService.getAuthData();
        case 1:
          authData = _context3.v;
          token = authData === null || authData === void 0 ? void 0 : authData.jwt;
          if (!(token && _classPrivateFieldGet(_cur_token, this) !== token)) {
            _context3.n = 2;
            break;
          }
          _classPrivateFieldSet(_cur_token, this, token);
          _assertClassBrand(_WebSocketManager_brand, this, _send).call(this, {
            access_token: token
          });
          _context3.n = 2;
          return LogsService.addEvents('service.handleOpen', 'Sent access_token to WebSocket');
        case 2:
          return _context3.a(2);
      }
    }, _callee3, this);
  }));
  return _handleOpen2.apply(this, arguments);
}
function _handleMessage(_x2) {
  return _handleMessage2.apply(this, arguments);
}
function _handleMessage2() {
  _handleMessage2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(event) {
    var message, _t2, _t3;
    return _regenerator().w(function (_context4) {
      while (1) switch (_context4.p = _context4.n) {
        case 0:
          _context4.p = 0;
          message = JSON.parse(event.data);
          log(LOG_LEVELS.INFO, 'WebSocket message received:', message);
          _context4.n = 1;
          return LogsService.addEvents('service.websocket.handleMessage', message);
        case 1:
          _t2 = message.type;
          _context4.n = _t2 === 'access_token_expired' ? 2 : _t2 === 'subscription_payment' ? 4 : _t2 === 'subscription_expired' ? 6 : _t2 === 'subscription_expires_in_week' ? 8 : _t2 === 'subscription_expires_in_day' ? 10 : _t2 === 'logout' ? 12 : _t2 === 'proxy_disconnect' ? 14 : _t2 === 'maintenance_activated' ? 16 : 18;
          break;
        case 2:
          _context4.n = 3;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleTokenExpired).call(this, message);
        case 3:
          return _context4.a(3, 19);
        case 4:
          _context4.n = 5;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleSubscriptionPayment).call(this, message);
        case 5:
          return _context4.a(3, 19);
        case 6:
          _context4.n = 7;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleSubscriptionExpired).call(this, message);
        case 7:
          return _context4.a(3, 19);
        case 8:
          _context4.n = 9;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleLogSubscriptionMessageType).call(this, message.type);
        case 9:
          return _context4.a(3, 19);
        case 10:
          _context4.n = 11;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleLogSubscriptionMessageType).call(this, message.type);
        case 11:
          return _context4.a(3, 19);
        case 12:
          _context4.n = 13;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleLogout).call(this, message.payload);
        case 13:
          return _context4.a(3, 19);
        case 14:
          _context4.n = 15;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleProxyDisconnect).call(this, message.payload);
        case 15:
          return _context4.a(3, 19);
        case 16:
          _context4.n = 17;
          return _assertClassBrand(_WebSocketManager_brand, this, _handleChangeApiGateway).call(this, message.payload);
        case 17:
          return _context4.a(3, 19);
        case 18:
          _context4.n = 19;
          return LogsService.addEvents('service.handleMessage', '', 'Unknown WebSocket message type:' + (message === null || message === void 0 ? void 0 : message.type));
        case 19:
          _context4.n = 21;
          break;
        case 20:
          _context4.p = 20;
          _t3 = _context4.v;
          _context4.n = 21;
          return LogsService.addEvents('service.error.handleMessage', _t3 === null || _t3 === void 0 ? void 0 : _t3.message);
        case 21:
          return _context4.a(2);
      }
    }, _callee4, this, [[0, 20]]);
  }));
  return _handleMessage2.apply(this, arguments);
}
function _handleTokenExpired(_x3) {
  return _handleTokenExpired2.apply(this, arguments);
}
function _handleTokenExpired2() {
  _handleTokenExpired2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(message) {
    var loadConnectStatus, _t4;
    return _regenerator().w(function (_context5) {
      while (1) switch (_context5.p = _context5.n) {
        case 0:
          _context5.p = 0;
          _context5.n = 1;
          return LogsService.addEvents('service.websocket.handleTokenExpired');
        case 1:
          _context5.n = 2;
          return StorageService.getLoadConnectStatus();
        case 2:
          loadConnectStatus = _context5.v;
          if (loadConnectStatus) {
            _context5.n = 3;
            break;
          }
          _context5.n = 3;
          return _assertClassBrand(_WebSocketManager_brand, this, _refreshBySocket).call(this, message);
        case 3:
          _context5.n = 5;
          break;
        case 4:
          _context5.p = 4;
          _t4 = _context5.v;
          _context5.n = 5;
          return LogsService.addEvents('service.error.handleTokenExpired', _t4 === null || _t4 === void 0 ? void 0 : _t4.message);
        case 5:
          return _context5.a(2);
      }
    }, _callee5, this, [[0, 4]]);
  }));
  return _handleTokenExpired2.apply(this, arguments);
}
function _refreshBySocket(_x4) {
  return _refreshBySocket2.apply(this, arguments);
}
function _refreshBySocket2() {
  _refreshBySocket2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(message) {
    var authData;
    return _regenerator().w(function (_context6) {
      while (1) switch (_context6.n) {
        case 0:
          _context6.n = 1;
          return StorageService.getAuthData();
        case 1:
          authData = _context6.v;
          _context6.n = 2;
          return LogsService.addEvents('service.refreshBySocket');
        case 2:
          if (!(authData !== null && authData !== void 0 && authData.refresh_token)) {
            _context6.n = 4;
            break;
          }
          _context6.n = 3;
          return LogsService.addEvents("action.send.".concat(REFRESH_TOKEN), {
            method_send: 'refreshBySocket'
          });
        case 3:
          if (_classPrivateFieldGet(_internalHandler, this)) {
            _classPrivateFieldGet(_internalHandler, this).call(this, {
              action: REFRESH_TOKEN,
              refresh_token: authData.refresh_token
            }, function () {});
          } else {
            browserApi.runtime.sendMessage({
              action: REFRESH_TOKEN,
              refresh_token: authData.refresh_token
            });
          }
          _context6.n = 6;
          break;
        case 4:
          _context6.n = 5;
          return LogsService.addEvents("action.send.".concat(LOGOUT), {
            method_send: 'refreshBySocket'
          });
        case 5:
          if (_classPrivateFieldGet(_internalHandler, this)) {
            _classPrivateFieldGet(_internalHandler, this).call(this, {
              action: LOGOUT,
              data: message.payload
            }, function () {});
          } else {
            browserApi.runtime.sendMessage({
              action: LOGOUT,
              data: message.payload
            });
          }
          this.closeWebSocket();
        case 6:
          return _context6.a(2);
      }
    }, _callee6, this);
  }));
  return _refreshBySocket2.apply(this, arguments);
}
function _handleSubscriptionPayment(_x5) {
  return _handleSubscriptionPayment2.apply(this, arguments);
}
function _handleSubscriptionPayment2() {
  _handleSubscriptionPayment2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(message) {
    var _userData, subscription_info, userData, oldExp, newExp, _t5;
    return _regenerator().w(function (_context7) {
      while (1) switch (_context7.p = _context7.n) {
        case 0:
          _context7.n = 1;
          return LogsService.addEvents('service.handleSubscriptionPayment', message);
        case 1:
          _context7.p = 1;
          subscription_info = JSON.parse(message.payload);
          _context7.n = 2;
          return StorageService.getUserData();
        case 2:
          userData = _context7.v;
          if (!userData) {
            userData = {};
          }
          oldExp = (_userData = userData) !== null && _userData !== void 0 && (_userData = _userData.subscription_info) !== null && _userData !== void 0 && _userData.subscription_exp_date ? new Date(userData.subscription_info.subscription_exp_date).getTime() : 0;
          newExp = subscription_info !== null && subscription_info !== void 0 && subscription_info.end_date ? new Date(subscription_info.end_date).getTime() : 0;
          if (!(oldExp > newExp)) {
            _context7.n = 4;
            break;
          }
          _context7.n = 3;
          return LogsService.addEvents('service.handleSubscriptionPayment', '', 'UserData subscription_exp_date > handleSubscriptionPayment subscription_info.end_date');
        case 3:
          return _context7.a(2);
        case 4:
          if (subscription_info.end_date) {
            subscription_info.subscription_exp_date = subscription_info.end_date;
          }
          userData = _objectSpread(_objectSpread({}, userData), {}, {
            subscription_info: subscription_info
          });
          _context7.n = 5;
          return StorageService.saveUserData(userData);
        case 5:
          _context7.n = 6;
          return initSubscriptionChecker();
        case 6:
          _context7.n = 8;
          break;
        case 7:
          _context7.p = 7;
          _t5 = _context7.v;
          log(LOG_LEVELS.ERROR, "Error update subscription");
          _context7.n = 8;
          return LogsService.addEvents('service.error.handleSubscriptionPayment', _t5.message);
        case 8:
          return _context7.a(2);
      }
    }, _callee7, null, [[1, 7]]);
  }));
  return _handleSubscriptionPayment2.apply(this, arguments);
}
function _handleSubscriptionExpired(_x6) {
  return _handleSubscriptionExpired2.apply(this, arguments);
}
function _handleSubscriptionExpired2() {
  _handleSubscriptionExpired2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(message) {
    var subscription_info, userData, proxyStatus, _t6;
    return _regenerator().w(function (_context8) {
      while (1) switch (_context8.p = _context8.n) {
        case 0:
          _context8.n = 1;
          return LogsService.addEvents('service.handleSubscriptionExpired', message);
        case 1:
          _context8.p = 1;
          subscription_info = JSON.parse(message.payload);
          _context8.n = 2;
          return StorageService.getUserData();
        case 2:
          userData = _context8.v;
          if (!userData) {
            userData = {};
          }
          if (subscription_info.endDate) {
            subscription_info.subscription_exp_date = subscription_info.endDate;
          }
          userData = _objectSpread(_objectSpread({}, userData), {}, {
            subscription_info: subscription_info
          });
          _context8.n = 3;
          return StorageService.saveUserData(userData);
        case 3:
          _context8.n = 4;
          return StorageService.getProxyStatus();
        case 4:
          proxyStatus = _context8.v;
          if (!(proxyStatus !== PROXY_STATUSES.CONNECT)) {
            _context8.n = 5;
            break;
          }
          return _context8.a(2);
        case 5:
          if (!_classPrivateFieldGet(_internalHandler, this)) {
            _context8.n = 6;
            break;
          }
          _classPrivateFieldGet(_internalHandler, this).call(this, {
            action: DISCONNECT
          }, function () {});
          _context8.n = 7;
          break;
        case 6:
          _context8.n = 7;
          return browserApi.runtime.sendMessage({
            action: DISCONNECT
          });
        case 7:
          _context8.n = 8;
          return LogsService.addEvents("action.send.".concat(DISCONNECT), {
            method_send: 'handleProxyDisconnect'
          }, 'Discount due to subscription expiration');
        case 8:
          _context8.n = 9;
          return removeStorageAsync(STORAGE_KEYS.LOAD_CONNECT_STATUS);
        case 9:
          _context8.n = 10;
          return updateIcon(false);
        case 10:
          _context8.n = 12;
          break;
        case 11:
          _context8.p = 11;
          _t6 = _context8.v;
          log(LOG_LEVELS.ERROR, "Error update subscription");
          _context8.n = 12;
          return LogsService.addEvents('service.error.handleSubscriptionExpired', _t6.message);
        case 12:
          return _context8.a(2);
      }
    }, _callee8, this, [[1, 11]]);
  }));
  return _handleSubscriptionExpired2.apply(this, arguments);
}
function _handleLogSubscriptionMessageType(_x7) {
  return _handleLogSubscriptionMessageType2.apply(this, arguments);
}
function _handleLogSubscriptionMessageType2() {
  _handleLogSubscriptionMessageType2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(messageType) {
    return _regenerator().w(function (_context9) {
      while (1) switch (_context9.n) {
        case 0:
          if (messageType) {
            _context9.n = 1;
            break;
          }
          return _context9.a(2);
        case 1:
          _context9.n = 2;
          return LogsService.addEvents('service.handleMessage', '', 'WebSocket subscription message type:' + messageType);
        case 2:
          return _context9.a(2);
      }
    }, _callee9);
  }));
  return _handleLogSubscriptionMessageType2.apply(this, arguments);
}
function _handleLogout(_x8) {
  return _handleLogout2.apply(this, arguments);
}
function _handleLogout2() {
  _handleLogout2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee0(payload) {
    return _regenerator().w(function (_context0) {
      while (1) switch (_context0.n) {
        case 0:
          log(LOG_LEVELS.INFO, 'Logout via WebSocket:', payload);
          _context0.n = 1;
          return LogsService.addEvents('service.handleLogout');
        case 1:
          _context0.n = 2;
          return LogsService.addEvents("action.send.".concat(LOGOUT), {
            method_send: 'handleLogout'
          });
        case 2:
          if (_classPrivateFieldGet(_internalHandler, this)) {
            _classPrivateFieldGet(_internalHandler, this).call(this, {
              action: LOGOUT,
              data: payload
            }, function () {});
          } else {
            browserApi.runtime.sendMessage({
              action: LOGOUT,
              data: payload
            });
          }
          this.closeWebSocket();
        case 3:
          return _context0.a(2);
      }
    }, _callee0, this);
  }));
  return _handleLogout2.apply(this, arguments);
}
function _handleProxyDisconnect(_x9) {
  return _handleProxyDisconnect2.apply(this, arguments);
}
function _handleProxyDisconnect2() {
  _handleProxyDisconnect2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee1(payload) {
    var _settings$currentProx, data, settings, _t7;
    return _regenerator().w(function (_context1) {
      while (1) switch (_context1.p = _context1.n) {
        case 0:
          log(LOG_LEVELS.INFO, 'DISCONNECT:', payload);
          _context1.p = 1;
          _context1.n = 2;
          return LogsService.addEvents('service.handleProxyDisconnect', payload);
        case 2:
          data = JSON.parse(payload);
          if (data !== null && data !== void 0 && data.radcheck_username) {
            _context1.n = 3;
            break;
          }
          return _context1.a(2);
        case 3:
          _context1.n = 4;
          return StorageService.getProxySettings();
        case 4:
          settings = _context1.v;
          if (!(settings.proxyStatus !== PROXY_STATUSES.CONNECT || (settings === null || settings === void 0 || (_settings$currentProx = settings.currentProxy) === null || _settings$currentProx === void 0 ? void 0 : _settings$currentProx.username) !== data.radcheck_username)) {
            _context1.n = 5;
            break;
          }
          return _context1.a(2);
        case 5:
          _context1.n = 6;
          return LogsService.addEvents("action.send.".concat(DISCONNECT), {
            method_send: 'handleProxyDisconnect'
          });
        case 6:
          if (_classPrivateFieldGet(_internalHandler, this)) {
            _classPrivateFieldGet(_internalHandler, this).call(this, {
              action: DISCONNECT,
              data: data
            }, function () {});
          } else {
            browserApi.runtime.sendMessage({
              action: DISCONNECT,
              data: data
            });
          }
          _context1.n = 7;
          return removeStorageAsync(STORAGE_KEYS.LOAD_CONNECT_STATUS);
        case 7:
          _context1.n = 9;
          break;
        case 8:
          _context1.p = 8;
          _t7 = _context1.v;
          _context1.n = 9;
          return LogsService.addEvents('service.error.handleProxyDisconnect', _t7.message);
        case 9:
          return _context1.a(2);
      }
    }, _callee1, this, [[1, 8]]);
  }));
  return _handleProxyDisconnect2.apply(this, arguments);
}
function _handleChangeApiGateway(_x0) {
  return _handleChangeApiGateway2.apply(this, arguments);
}
function _handleChangeApiGateway2() {
  _handleChangeApiGateway2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee10(payload) {
    var data, apiGatewayMain, pauseSettings, currentProxy, authData, cityCode, cityInfo, apiGatewaysForCity, _apiGatewayMain, _t8;
    return _regenerator().w(function (_context10) {
      while (1) switch (_context10.n) {
        case 0:
          data = JSON.parse(payload);
          _context10.n = 1;
          return StorageService.getApiGatewayMain();
        case 1:
          apiGatewayMain = _context10.v;
          _context10.n = 2;
          return LogsService.addEvents('service.handleChangeApiGateway', {
            message: 'maintenance_activated',
            data: data,
            apiGatewayMain: apiGatewayMain
          });
        case 2:
          _t8 = (data === null || data === void 0 ? void 0 : data.domain) === apiGatewayMain;
          if (!_t8) {
            _context10.n = 4;
            break;
          }
          _context10.n = 3;
          return StorageService.isExistApiGateways();
        case 3:
          _t8 = _context10.v;
        case 4:
          if (!_t8) {
            _context10.n = 13;
            break;
          }
          _context10.n = 5;
          return StorageService.getPauseSetting();
        case 5:
          pauseSettings = _context10.v;
          _context10.n = 6;
          return StorageService.getCurrentProxy();
        case 6:
          currentProxy = _context10.v;
          _context10.n = 7;
          return StorageService.getAuthData();
        case 7:
          authData = _context10.v;
          _context10.n = 8;
          return CountrySelectorService.getCityCodeForCountry(currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.country);
        case 8:
          cityCode = _context10.v;
          _context10.n = 9;
          return CountrySelectorService.getInfoByCityCode(cityCode);
        case 9:
          cityInfo = _context10.v;
          _context10.n = 10;
          return getApiGatewaysForCity(cityInfo, true);
        case 10:
          apiGatewaysForCity = _context10.v;
          _context10.n = 11;
          return StorageService.getApiGatewayMain();
        case 11:
          _apiGatewayMain = _context10.v;
          _context10.n = 12;
          return selectNextApiGatewayMain(apiGatewaysForCity, _apiGatewayMain);
        case 12:
          if (_classPrivateFieldGet(_internalHandler, this)) {
            _classPrivateFieldGet(_internalHandler, this).call(this, {
              action: CONNECT,
              country: currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.country,
              loggedIn: authData === null || authData === void 0 ? void 0 : authData.loggedIn,
              isPause: pauseSettings === null || pauseSettings === void 0 ? void 0 : pauseSettings.pause
            });
          } else {
            browserApi.runtime.sendMessage({
              action: CONNECT,
              country: currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.country,
              loggedIn: authData === null || authData === void 0 ? void 0 : authData.loggedIn,
              isPause: pauseSettings === null || pauseSettings === void 0 ? void 0 : pauseSettings.pause
            });
          }
          return _context10.a(2);
        case 13:
          _context10.n = 14;
          return ApiClient.getApiGateways();
        case 14:
          return _context10.a(2);
      }
    }, _callee10, this);
  }));
  return _handleChangeApiGateway2.apply(this, arguments);
}
function _handleError(_x1) {
  return _handleError2.apply(this, arguments);
}
function _handleError2() {
  _handleError2 = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee11(error) {
    var msg, match;
    return _regenerator().w(function (_context11) {
      while (1) switch (_context11.n) {
        case 0:
          msg = (error === null || error === void 0 ? void 0 : error.message) || '';
          match = WEBSOCKET_ERRORS.find(function (err) {
            return msg.includes(err);
          });
          _context11.n = 1;
          return sendPing();
        case 1:
          if (!match) {
            _context11.n = 2;
            break;
          }
          LogsService.addEvents("service.error.websocket.".concat(match.replace('net::', '').toLowerCase()), msg);
          return _context11.a(2);
        case 2:
          LogsService.addEvents('service.error.websocket', msg);
        case 3:
          return _context11.a(2);
      }
    }, _callee11);
  }));
  return _handleError2.apply(this, arguments);
}
function _handleClose() {
  var _this = this;
  LogsService.addEvents('service.websocketClose');
  if (_classPrivateFieldGet(_reconnect, this)) {
    if (_classPrivateFieldGet(_timeoutReconnect, this)) {
      clearTimeout(_classPrivateFieldGet(_timeoutReconnect, this));
      _classPrivateFieldSet(_timeoutReconnect, this, null);
    }
    var socket = _classPrivateFieldGet(_socket, this);
    _classPrivateFieldSet(_timeoutReconnect, this, setTimeout(/*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
      return _regenerator().w(function (_context2) {
        while (1) switch (_context2.n) {
          case 0:
            if (!((socket === null || socket === void 0 ? void 0 : socket.readyState) !== WebSocket.OPEN)) {
              _context2.n = 1;
              break;
            }
            _classPrivateFieldSet(_cur_token, _this, null);
            _classPrivateFieldSet(_socket, _this, null);
            _context2.n = 1;
            return _this.initializeWebSocket(_classPrivateFieldGet(_internalHandler, _this));
          case 1:
            return _context2.a(2);
        }
      }, _callee2);
    })), RECONNECT_DELAY_MS));
  }
}
function _send(data) {
  var _classPrivateFieldGet5;
  if (((_classPrivateFieldGet5 = _classPrivateFieldGet(_socket, this)) === null || _classPrivateFieldGet5 === void 0 ? void 0 : _classPrivateFieldGet5.readyState) === WebSocket.OPEN) {
    LogsService.addEvents('service.websocketSend');
    _classPrivateFieldGet(_socket, this).send(JSON.stringify(data));
  }
}
module.exports = new WebSocketManager();

/***/ }),

/***/ "./src/sw/tools/common.js":
/*!********************************!*\
  !*** ./src/sw/tools/common.js ***!
  \********************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var _require = __webpack_require__(/*! @sw/constants/country_code_mapping */ "./src/sw/constants/country_code_mapping.js"),
  COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2 = _require.COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
function updateBadge(_x) {
  return _updateBadge.apply(this, arguments);
}
function _updateBadge() {
  _updateBadge = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(_ref) {
    var connected, blocked, error, apiCities, countryName, found, codeAlpha3, codeAlpha2, badgeText, _t, _t2;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.p = _context.n) {
        case 0:
          connected = _ref.connected, blocked = _ref.blocked, error = _ref.error;
          _context.p = 1;
          if (!blocked) {
            _context.n = 6;
            break;
          }
          _context.n = 2;
          return browserApi.action.setBadgeText({
            text: "X"
          });
        case 2:
          _context.n = 3;
          return browserApi.action.setBadgeBackgroundColor({
            color: "#FF2D55"
          });
        case 3:
          if (!browserApi.action.setBadgeTextColor) {
            _context.n = 4;
            break;
          }
          _context.n = 4;
          return browserApi.action.setBadgeTextColor({
            color: "#FFFFFF"
          });
        case 4:
          _context.n = 5;
          return LogsService.addEvents('service.blocked.updateBadge');
        case 5:
          return _context.a(2);
        case 6:
          if (!error) {
            _context.n = 11;
            break;
          }
          _context.n = 7;
          return browserApi.action.setBadgeText({
            text: " ! "
          });
        case 7:
          _context.n = 8;
          return browserApi.action.setBadgeBackgroundColor({
            color: "#BFCAD8"
          });
        case 8:
          _context.n = 9;
          return LogsService.addEvents('service.error.updateBadge', error);
        case 9:
          if (!browserApi.action.setBadgeTextColor) {
            _context.n = 10;
            break;
          }
          _context.n = 10;
          return browserApi.action.setBadgeTextColor({
            color: "#FFFFFF"
          });
        case 10:
          return _context.a(2);
        case 11:
          if (connected) {
            _context.n = 14;
            break;
          }
          _context.n = 12;
          return browserApi.action.setBadgeText({
            text: ""
          });
        case 12:
          _context.n = 13;
          return LogsService.addEvents('service.connected.updateBadge', !connected);
        case 13:
          return _context.a(2);
        case 14:
          _context.n = 15;
          return StorageService.getCitiesList();
        case 15:
          apiCities = _context.v;
          _context.n = 16;
          return StorageService.getSelectedCountry();
        case 16:
          countryName = _context.v;
          if (!(!countryName || !Array.isArray(apiCities) || apiCities.length === 0)) {
            _context.n = 18;
            break;
          }
          _context.n = 17;
          return browserApi.action.setBadgeText({
            text: ""
          });
        case 17:
          return _context.a(2);
        case 18:
          found = apiCities.find(function (c) {
            return c.country === countryName;
          });
          codeAlpha3 = found === null || found === void 0 ? void 0 : found.country_code;
          codeAlpha2 = codeAlpha3 ? COUNTRY_CODE_MAPPING_ALPHA3_TO_ALPHA2[codeAlpha3] : undefined;
          badgeText = (codeAlpha2 || "").toUpperCase();
          if (badgeText) {
            _context.n = 20;
            break;
          }
          _context.n = 19;
          return browserApi.action.setBadgeText({
            text: ""
          });
        case 19:
          return _context.a(2);
        case 20:
          _context.n = 21;
          return browserApi.action.setBadgeText({
            text: badgeText
          });
        case 21:
          _context.n = 22;
          return browserApi.action.setBadgeBackgroundColor({
            color: "#34c759"
          });
        case 22:
          if (!browserApi.action.setBadgeTextColor) {
            _context.n = 23;
            break;
          }
          _context.n = 23;
          return browserApi.action.setBadgeTextColor({
            color: "#FFFFFF"
          });
        case 23:
          _context.n = 28;
          break;
        case 24:
          _context.p = 24;
          _t = _context.v;
          _context.n = 25;
          return LogsService.addEvents('service.error.updateBadge_er', _t.message);
        case 25:
          _context.p = 25;
          _context.n = 26;
          return browserApi.action.setBadgeText({
            text: ""
          });
        case 26:
          _context.n = 28;
          break;
        case 27:
          _context.p = 27;
          _t2 = _context.v;
        case 28:
          return _context.a(2);
      }
    }, _callee, null, [[25, 27], [1, 24]]);
  }));
  return _updateBadge.apply(this, arguments);
}
function updateIcon(_x2) {
  return _updateIcon.apply(this, arguments);
}
function _updateIcon() {
  _updateIcon = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(connected) {
    var iconPath, _t3;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          iconPath = 'icons/icon.png';
          browserApi.action.setIcon({
            path: iconPath
          }, function () {});
          _context2.n = 1;
          return StorageService.getAnotherExtension();
        case 1:
          _t3 = !_context2.v;
          if (!_t3) {
            _context2.n = 3;
            break;
          }
          _context2.n = 2;
          return StorageService.getDisabledPermissionsExtension();
        case 2:
          _t3 = !_context2.v;
        case 3:
          if (!_t3) {
            _context2.n = 5;
            break;
          }
          _context2.n = 4;
          return updateBadge({
            connected: connected
          });
        case 4:
          _context2.n = 6;
          break;
        case 5:
          _context2.n = 6;
          return updateBadge({
            blocked: true
          });
        case 6:
          return _context2.a(2);
      }
    }, _callee2);
  }));
  return _updateIcon.apply(this, arguments);
}
function updateBlockIcon() {
  return _updateBlockIcon.apply(this, arguments);
}
function _updateBlockIcon() {
  _updateBlockIcon = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3() {
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.n) {
        case 0:
          _context3.n = 1;
          return updateBadge({
            error: true
          });
        case 1:
          return _context3.a(2);
      }
    }, _callee3);
  }));
  return _updateBlockIcon.apply(this, arguments);
}
function createBypassMatchers(list) {
  var matchers = [];
  var _iterator = _createForOfIteratorHelper(list),
    _step;
  try {
    var _loop = function _loop() {
        var raw = _step.value;
        var entry = raw.trim().toLowerCase();
        if (entry === '<loopback>') {
          matchers.push(function (host) {
            return host.startsWith('127.') || host === 'localhost';
          });
          return 0; // continue
        }
        if (entry === '<local>') {
          matchers.push(function (host) {
            return host.endsWith('.local') || host === 'localhost' || /^[^\.]+$/.test(host);
          });
          return 0; // continue
        }
        if (entry.startsWith('*.')) {
          var domain = entry.slice(2);
          matchers.push(function (host) {
            return host.endsWith('.' + domain);
          });
          return 0; // continue
        }
        if (entry.startsWith('*')) {
          var _domain = entry.slice(1);
          matchers.push(function (host) {
            return host.endsWith('.' + _domain);
          });
          matchers.push(function (host) {
            return host.endsWith(_domain);
          });
          return 0; // continue
        }
        matchers.push(function (host) {
          return host === entry;
        });
      },
      _ret;
    for (_iterator.s(); !(_step = _iterator.n()).done;) {
      _ret = _loop();
      if (_ret === 0) continue;
    }
  } catch (err) {
    _iterator.e(err);
  } finally {
    _iterator.f();
  }
  return matchers;
}
function checkUserUid(_x3, _x4) {
  return _checkUserUid.apply(this, arguments);
}
function _checkUserUid() {
  _checkUserUid = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(email, hash) {
    var hashedEmail;
    return _regenerator().w(function (_context4) {
      while (1) switch (_context4.n) {
        case 0:
          _context4.n = 1;
          return hashEmail(email);
        case 1:
          hashedEmail = _context4.v;
          if (!(hash !== hashedEmail)) {
            _context4.n = 5;
            break;
          }
          if (true) {
            _context4.n = 4;
            break;
          }
          _context4.n = 2;
          return StorageService.saveGeneralSettings({});
        case 2:
          _context4.n = 3;
          return StorageService.saveSettings({
            splitTunneling: true
          });
        case 3:
          _context4.n = 4;
          return StorageService.saveSecuritySettings({
            stopWebRTC: true,
            warnings: false,
            threatProtection: false
          });
        case 4:
          _context4.n = 5;
          return StorageService.saveUserUid(hashedEmail);
        case 5:
          return _context4.a(2);
      }
    }, _callee4);
  }));
  return _checkUserUid.apply(this, arguments);
}
function hashEmail(_x5) {
  return _hashEmail.apply(this, arguments);
}
function _hashEmail() {
  _hashEmail = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(email) {
    var hashed;
    return _regenerator().w(function (_context5) {
      while (1) switch (_context5.n) {
        case 0:
          _context5.n = 1;
          return crypto.subtle.digest("SHA-256", new TextEncoder().encode(email));
        case 1:
          hashed = _context5.v;
          return _context5.a(2, Array.from(new Uint8Array(hashed)).map(function (b) {
            return b.toString(16).padStart(2, "0");
          }).join(""));
      }
    }, _callee5);
  }));
  return _hashEmail.apply(this, arguments);
}
function getCountryCodeByCountry(_x6) {
  return _getCountryCodeByCountry.apply(this, arguments);
}
function _getCountryCodeByCountry() {
  _getCountryCodeByCountry = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(country) {
    var countries, foundCountry;
    return _regenerator().w(function (_context6) {
      while (1) switch (_context6.n) {
        case 0:
          _context6.n = 1;
          return StorageService.getCitiesList();
        case 1:
          countries = _context6.v;
          foundCountry = Object.values(countries).find(function (countryData) {
            return countryData.country.toLowerCase() === country.toLowerCase();
          });
          return _context6.a(2, foundCountry ? foundCountry.country_code : null);
      }
    }, _callee6);
  }));
  return _getCountryCodeByCountry.apply(this, arguments);
}
function getOSFromUserAgent() {
  var ua = navigator.userAgent;
  var os = "Unknown";
  var version = "";
  if (/Windows NT/.test(ua)) {
    os = "Windows";
    var match = ua.match(/Windows NT ([0-9.]+)/);
    if (match) version = match[1];
  } else if (/Mac OS X/.test(ua)) {
    os = "macOS";
    var _match = ua.match(/Mac OS X ([0-9_]+)/);
    if (_match) version = _match[1].replace(/_/g, ".");
  } else if (/Linux/.test(ua)) {
    os = "Linux";
  }
  return {
    os: os,
    version: version
  };
}
function getBrowserInfo() {
  var ua = navigator.userAgent;
  var browser = "Unknown";
  var version = "0";
  if (ua.includes("Edg/")) {
    var _ua$match;
    browser = "Edge";
    version = (_ua$match = ua.match(/Edg\/([0-9.]+)/)) === null || _ua$match === void 0 ? void 0 : _ua$match[1];
  } else if (ua.includes("Chrome/")) {
    var _ua$match2;
    browser = "Chrome";
    version = (_ua$match2 = ua.match(/Chrome\/([0-9.]+)/)) === null || _ua$match2 === void 0 ? void 0 : _ua$match2[1];
  } else if (ua.includes("Firefox/")) {
    var _ua$match3;
    browser = "Firefox";
    version = (_ua$match3 = ua.match(/Firefox\/([0-9.]+)/)) === null || _ua$match3 === void 0 ? void 0 : _ua$match3[1];
  } else if (ua.includes("Safari/") && ua.includes("Version/")) {
    var _ua$match4;
    browser = "Safari";
    version = (_ua$match4 = ua.match(/Version\/([0-9.]+)/)) === null || _ua$match4 === void 0 ? void 0 : _ua$match4[1];
  }
  return {
    browser: browser,
    version: version
  };
}
function getUserAgentForApi() {
  var version = browserApi.runtime.getManifest().version;
  var browserInfo = getBrowserInfo();
  var osInfo = getOSFromUserAgent();
  return "ApexGuard/".concat(version, " (").concat(browserInfo.browser, " ").concat(browserInfo.version, "; ").concat(osInfo.os, ";)");
}
module.exports = {
  updateIcon: updateIcon,
  updateBlockIcon: updateBlockIcon,
  createBypassMatchers: createBypassMatchers,
  checkUserUid: checkUserUid,
  getCountryCodeByCountry: getCountryCodeByCountry,
  getUserAgentForApi: getUserAgentForApi
};

/***/ }),

/***/ "./src/sw/tools/log.js":
/*!*****************************!*\
  !*** ./src/sw/tools/log.js ***!
  \*****************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   LOG_LEVELS: () => (/* binding */ LOG_LEVELS),
/* harmony export */   log: () => (/* binding */ log)
/* harmony export */ });
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
/* harmony import */ var _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_common_browserApi__WEBPACK_IMPORTED_MODULE_0__);
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }

var LOG_LEVELS = {
  INFO: 'info',
  WARN: 'warn',
  ERROR: 'error',
  DEBUG: 'debug'
};
var isDebugEnabled = false;
var STORAGE_KEY_DEBUG = 'debugLog';
function startDebugStatusUpdater() {
  _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().storage.local.get([STORAGE_KEY_DEBUG], function (result) {
    isDebugEnabled = result[STORAGE_KEY_DEBUG] || false;
  });
  setInterval(function () {
    _common_browserApi__WEBPACK_IMPORTED_MODULE_0___default().storage.local.get([STORAGE_KEY_DEBUG], function (result) {
      isDebugEnabled = result[STORAGE_KEY_DEBUG] || false;
    });
  }, 60000);
}
startDebugStatusUpdater();
function log(level) {
  try {
    if (!isDebugEnabled) {
      return;
    }
    for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
      args[_key - 1] = arguments[_key];
    }
    var message = args.map(function (arg) {
      return _typeof(arg) === 'object' ? JSON.stringify(arg) : arg;
    }).join(' ');
    var prefix = "[Utils][".concat(new Date().toISOString(), "] [").concat(level.toUpperCase(), "]");
    var logMethod = console[level] || console.log;
    logMethod("".concat(prefix, " ").concat(message));
  } catch (e) {}
}


/***/ }),

/***/ "./src/sw/tools/proxy_utils.js":
/*!*************************************!*\
  !*** ./src/sw/tools/proxy_utils.js ***!
  \*************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _toConsumableArray(r) { return _arrayWithoutHoles(r) || _iterableToArray(r) || _unsupportedIterableToArray(r) || _nonIterableSpread(); }
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _iterableToArray(r) { if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r); }
function _arrayWithoutHoles(r) { if (Array.isArray(r)) return _arrayLikeToArray(r); }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var _require = __webpack_require__(/*! ./common */ "./src/sw/tools/common.js"),
  updateIcon = _require.updateIcon;
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var _require2 = __webpack_require__(/*! @services/HttpRequestApi */ "./src/common/services/HttpRequestApi.js"),
  HttpRequestApi = _require2.HttpRequestApi;
var _require3 = __webpack_require__(/*! @common/browser_storages/browser_storage */ "./src/common/browser_storages/browser_storage.js"),
  removeStorageAsync = _require3.removeStorageAsync;
var _require4 = __webpack_require__(/*! @sw/constants/storage_keys_constants */ "./src/sw/constants/storage_keys_constants.js"),
  STORAGE_KEYS = _require4.STORAGE_KEYS;
var _require5 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require5.log,
  LOG_LEVELS = _require5.LOG_LEVELS;
var _require6 = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js"),
  PROXY_STATUSES = _require6.PROXY_STATUSES;
var _require7 = __webpack_require__(/*! @common/functions/updateFirefoxProxyListener */ "./src/common/functions/updateFirefoxProxyListener.js"),
  clearFirefoxProxyListener = _require7.clearFirefoxProxyListener,
  updateFirefoxProxyListener = _require7.updateFirefoxProxyListener;
var _require8 = __webpack_require__(/*! @sw/tools/utils */ "./src/sw/tools/utils.js"),
  showKillSwitchWarning = _require8.showKillSwitchWarning;
var _require9 = __webpack_require__(/*! @common/functions/checkDomains */ "./src/common/functions/checkDomains.js"),
  checkDomains = _require9.checkDomains;
var _require0 = __webpack_require__(/*! @sw/constants/default_urls_constants */ "./src/sw/constants/default_urls_constants.js"),
  getDefaultPasses = _require0.getDefaultPasses;
var _require1 = __webpack_require__(/*! @sw/constants/api_urls */ "./src/sw/constants/api_urls.js"),
  API_URLS = _require1.API_URLS;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
function handleDisconnect() {
  return _handleDisconnect.apply(this, arguments);
}
function _handleDisconnect() {
  _handleDisconnect = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
    var sendResponse,
      disconnect_with_error,
      ignore_status_killswitch,
      isCheckCancel,
      manual_disconnect,
      _args = arguments;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.n) {
        case 0:
          sendResponse = _args.length > 0 && _args[0] !== undefined ? _args[0] : function () {};
          disconnect_with_error = _args.length > 1 && _args[1] !== undefined ? _args[1] : false;
          ignore_status_killswitch = _args.length > 2 && _args[2] !== undefined ? _args[2] : false;
          isCheckCancel = _args.length > 3 && _args[3] !== undefined ? _args[3] : false;
          manual_disconnect = _args.length > 4 && _args[4] !== undefined ? _args[4] : false;
          _context.n = 1;
          return disconnectProxy(sendResponse, disconnect_with_error, ignore_status_killswitch, isCheckCancel, manual_disconnect);
        case 1:
          _context.n = 2;
          return removeStorageAsync(STORAGE_KEYS.SELECTED_COUNTRY);
        case 2:
          return _context.a(2);
      }
    }, _callee);
  }));
  return _handleDisconnect.apply(this, arguments);
}
function disconnectProxy() {
  return _disconnectProxy.apply(this, arguments);
}
function _disconnectProxy() {
  _disconnectProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
    var sendResponse,
      disconnect_with_error,
      ignore_status_killswitch,
      isCheckCancel,
      manual_disconnect,
      _args2 = arguments;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          sendResponse = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : function () {};
          disconnect_with_error = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : false;
          ignore_status_killswitch = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : false;
          isCheckCancel = _args2.length > 3 && _args2[3] !== undefined ? _args2[3] : false;
          manual_disconnect = _args2.length > 4 && _args2[4] !== undefined ? _args2[4] : false;
          _context2.n = 1;
          return clearProxy(sendResponse, isCheckCancel, manual_disconnect);
        case 1:
          _context2.n = 2;
          return StorageService.getSettingsKillSwitch();
        case 2:
          if (!_context2.v) {
            _context2.n = 3;
            break;
          }
          _context2.n = 3;
          return enableForceKillSwitch(!disconnect_with_error, ignore_status_killswitch);
        case 3:
          return _context2.a(2);
      }
    }, _callee2);
  }));
  return _disconnectProxy.apply(this, arguments);
}
function clearProxy(_x) {
  return _clearProxy.apply(this, arguments);
}
function _clearProxy() {
  _clearProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(callback) {
    var isCheckCancel,
      manual_disconnect,
      currentProxy,
      serverDomain,
      request,
      isCanceled,
      _args3 = arguments,
      _t;
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.p = _context3.n) {
        case 0:
          isCheckCancel = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : false;
          manual_disconnect = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : false;
          if (!browserApi.isFireFoxBrowser()) {
            _context3.n = 2;
            break;
          }
          _context3.n = 1;
          return clearFirefoxProxy(callback, manual_disconnect);
        case 1:
          return _context3.a(2);
        case 2:
          _context3.p = 2;
          _context3.n = 3;
          return LogsService.addEvents('service.clearProxy', isCheckCancel);
        case 3:
          _context3.n = 4;
          return new Promise(function (resolve, reject) {
            browserApi.proxy.settings.clear({
              scope: 'regular'
            }, function () {
              if (browserApi.runtime.lastError) {
                reject(browserApi.runtime.lastError);
              } else {
                resolve();
              }
            });
          });
        case 4:
          _context3.n = 5;
          return StorageService.getCurrentProxy();
        case 5:
          currentProxy = _context3.v;
          _context3.n = 6;
          return StorageService.getServerDomain();
        case 6:
          serverDomain = _context3.v;
          request = new HttpRequestApi(serverDomain);
          _context3.n = 7;
          return StorageService.clearProxySettings();
        case 7:
          _context3.n = 8;
          return request.sendEndConnectRequest(currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.username, currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.password, manual_disconnect);
        case 8:
          isCanceled = false;
          if (!isCheckCancel) {
            _context3.n = 10;
            break;
          }
          _context3.n = 9;
          return StorageService.getCancelConnect();
        case 9:
          isCanceled = _context3.v;
        case 10:
          _context3.n = 11;
          return updateIcon(false);
        case 11:
          callback({
            status: PROXY_STATUSES.DISCONNECT,
            isCanceled: isCanceled
          });
          _context3.n = 14;
          break;
        case 12:
          _context3.p = 12;
          _t = _context3.v;
          _context3.n = 13;
          return LogsService.addEvents('service.error.clearProxy', _t === null || _t === void 0 ? void 0 : _t.message);
        case 13:
          log(LOG_LEVELS.INFO, 'Error in clearProxy: ' + _t.message, 'error');
          callback({
            status: 'Error',
            error: _t.message
          });
        case 14:
          return _context3.a(2);
      }
    }, _callee3, null, [[2, 12]]);
  }));
  return _clearProxy.apply(this, arguments);
}
function clearFirefoxProxy(_x2, _x3) {
  return _clearFirefoxProxy.apply(this, arguments);
}
function _clearFirefoxProxy() {
  _clearFirefoxProxy = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(callback, manual_disconnect) {
    var currentProxy, serverDomain, request, _t2, _t3;
    return _regenerator().w(function (_context4) {
      while (1) switch (_context4.p = _context4.n) {
        case 0:
          _context4.p = 0;
          _context4.n = 1;
          return LogsService.addEvents('service.clearFirefoxProxy');
        case 1:
          _context4.n = 2;
          return clearFirefoxProxyListener();
        case 2:
          _context4.n = 3;
          return StorageService.getCurrentProxy();
        case 3:
          currentProxy = _context4.v;
          _context4.n = 4;
          return StorageService.getServerDomain();
        case 4:
          serverDomain = _context4.v;
          request = new HttpRequestApi(serverDomain);
          _context4.n = 5;
          return StorageService.clearProxySettings();
        case 5:
          _context4.n = 6;
          return request.sendEndConnectRequest(currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.username, currentProxy === null || currentProxy === void 0 ? void 0 : currentProxy.password, manual_disconnect);
        case 6:
          _context4.n = 7;
          return updateIcon(false);
        case 7:
          _t2 = callback;
          if (!_t2) {
            _context4.n = 8;
            break;
          }
          _context4.n = 8;
          return callback({
            status: PROXY_STATUSES.DISCONNECT
          });
        case 8:
          _context4.n = 11;
          break;
        case 9:
          _context4.p = 9;
          _t3 = _context4.v;
          _context4.n = 10;
          return LogsService.addEvents('service.error.clearFirefoxProxy', _t3 === null || _t3 === void 0 ? void 0 : _t3.message);
        case 10:
          log(LOG_LEVELS.ERROR, 'Error clearing Firefox proxy3333333:', _t3);
          callback && callback({
            status: 'Error',
            error: _t3.message
          });
        case 11:
          return _context4.a(2);
      }
    }, _callee4, null, [[0, 9]]);
  }));
  return _clearFirefoxProxy.apply(this, arguments);
}
function getNoKillSwitchDomains() {
  return _getNoKillSwitchDomains.apply(this, arguments);
}
function _getNoKillSwitchDomains() {
  _getNoKillSwitchDomains = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5() {
    var array_domains, apiGateways, serverDomain, lastServerDomain, pauseSettings;
    return _regenerator().w(function (_context5) {
      while (1) switch (_context5.n) {
        case 0:
          _context5.n = 1;
          return LogsService.addEvents('service.getNoKillSwitchDomains');
        case 1:
          array_domains = getDefaultPasses();
          _context5.n = 2;
          return checkDomains();
        case 2:
          _context5.n = 3;
          return StorageService.getApiGateways();
        case 3:
          apiGateways = _context5.v;
          if (apiGateways && apiGateways.length) {
            array_domains = [].concat(_toConsumableArray(array_domains), _toConsumableArray(apiGateways));
          }
          _context5.n = 4;
          return StorageService.getServerDomain();
        case 4:
          serverDomain = _context5.v;
          if (serverDomain) {
            array_domains.push(serverDomain);
          }
          _context5.n = 5;
          return StorageService.getLastServerDomain();
        case 5:
          lastServerDomain = _context5.v;
          if (lastServerDomain) {
            array_domains.push(lastServerDomain);
          }
          _context5.n = 6;
          return StorageService.getPauseSetting();
        case 6:
          pauseSettings = _context5.v;
          if (pauseSettings !== null && pauseSettings !== void 0 && pauseSettings.pause) {
            array_domains.push(API_URLS.QUICK_PING_IP);
          }
          return _context5.a(2, array_domains);
      }
    }, _callee5);
  }));
  return _getNoKillSwitchDomains.apply(this, arguments);
}
function enableForceKillSwitch() {
  return _enableForceKillSwitch.apply(this, arguments);
}
function _enableForceKillSwitch() {
  _enableForceKillSwitch = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7() {
    var _settings$splitTunnel;
    var show_window,
      ignore_status,
      authData,
      previousVpnState,
      disabledPermissionsExtension,
      settings,
      array_domains,
      splitTunneling,
      bypassList,
      _args7 = arguments,
      _t5;
    return _regenerator().w(function (_context7) {
      while (1) switch (_context7.n) {
        case 0:
          show_window = _args7.length > 0 && _args7[0] !== undefined ? _args7[0] : false;
          ignore_status = _args7.length > 1 && _args7[1] !== undefined ? _args7[1] : false;
          _context7.n = 1;
          return StorageService.getAuthData();
        case 1:
          authData = _context7.v;
          _context7.n = 2;
          return StorageService.getAnotherExtension();
        case 2:
          previousVpnState = _context7.v;
          _context7.n = 3;
          return StorageService.getDisabledPermissionsExtension();
        case 3:
          disabledPermissionsExtension = _context7.v;
          _context7.n = 4;
          return StorageService.getSettings();
        case 4:
          _t5 = _context7.v;
          if (_t5) {
            _context7.n = 5;
            break;
          }
          _t5 = {};
        case 5:
          settings = _t5;
          if (!(!ignore_status && authData.proxyStatus === PROXY_STATUSES.CONNECT || !authData.loggedIn || !authData.userData || !authData.userData.has_active_subscription || !(settings !== null && settings !== void 0 && settings.killSwitch) || previousVpnState || disabledPermissionsExtension)) {
            _context7.n = 6;
            break;
          }
          return _context7.a(2);
        case 6:
          _context7.n = 7;
          return getNoKillSwitchDomains();
        case 7:
          array_domains = _context7.v;
          splitTunneling = settings.splitTunneling ? settings.splitTunneling : true;
          bypassList = splitTunneling && (_settings$splitTunnel = settings.splitTunnelingList) !== null && _settings$splitTunnel !== void 0 && _settings$splitTunnel.length ? [].concat(_toConsumableArray(array_domains), _toConsumableArray(settings.splitTunnelingList)) : array_domains;
          if (!browserApi.isFireFoxBrowser()) {
            _context7.n = 9;
            break;
          }
          _context7.n = 8;
          return firefoxKillSwitch(bypassList, show_window);
        case 8:
          return _context7.a(2);
        case 9:
          log(LOG_LEVELS.INFO, 'proxy.settings.setproxy.settings.setproxy.settings.setproxy.settings.setproxy.settings.set');
          browserApi.proxy.settings.set({
            value: {
              mode: 'fixed_servers',
              rules: {
                singleProxy: {
                  scheme: 'http',
                  host: '127.0.0.1',
                  port: 1
                },
                bypassList: bypassList
              }
            },
            scope: 'regular'
          }, /*#__PURE__*/_asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6() {
            var serverDomain, request, _t4;
            return _regenerator().w(function (_context6) {
              while (1) switch (_context6.p = _context6.n) {
                case 0:
                  _context6.p = 0;
                  _context6.n = 1;
                  return LogsService.addEvents('service.enableForceKillSwitch');
                case 1:
                  _context6.n = 2;
                  return StorageService.getServerDomain();
                case 2:
                  serverDomain = _context6.v;
                  request = new HttpRequestApi(serverDomain);
                  _context6.n = 3;
                  return request.sendEndConnectRequest(null, null, true);
                case 3:
                  _context6.n = 4;
                  return StorageService.saveProxyStatus(PROXY_STATUSES.KILL_SWITCH);
                case 4:
                  _context6.n = 5;
                  return updateIcon(false);
                case 5:
                  if (show_window) showKillSwitchWarning();
                  _context6.n = 7;
                  break;
                case 6:
                  _context6.p = 6;
                  _t4 = _context6.v;
                  _context6.n = 7;
                  return LogsService.addEvents('service.error.showKillSwitchWarning', _t4.message);
                case 7:
                  return _context6.a(2);
              }
            }, _callee6, null, [[0, 6]]);
          })));
        case 10:
          return _context7.a(2);
      }
    }, _callee7);
  }));
  return _enableForceKillSwitch.apply(this, arguments);
}
function firefoxKillSwitch(_x4, _x5) {
  return _firefoxKillSwitch.apply(this, arguments);
}
function _firefoxKillSwitch() {
  _firefoxKillSwitch = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee8(bypassList, show_window) {
    var proxyStatus, _t6;
    return _regenerator().w(function (_context8) {
      while (1) switch (_context8.p = _context8.n) {
        case 0:
          _context8.p = 0;
          _context8.n = 1;
          return LogsService.addEvents('service.firefoxKillSwitch');
        case 1:
          _context8.n = 2;
          return updateFirefoxProxyListener({
            scheme: "http",
            host: "127.0.0.1",
            port: 1,
            bypassList: bypassList,
            killSwitch: true
          });
        case 2:
          proxyStatus = PROXY_STATUSES.KILL_SWITCH;
          _context8.n = 3;
          return StorageService.saveProxyStatus(proxyStatus);
        case 3:
          _context8.n = 4;
          return updateIcon(false);
        case 4:
          if (show_window) showKillSwitchWarning();
          _context8.n = 7;
          break;
        case 5:
          _context8.p = 5;
          _t6 = _context8.v;
          _context8.n = 6;
          return LogsService.addEvents('service.error.firefoxKillSwitch', _t6.message);
        case 6:
          log(LOG_LEVELS.ERROR, 'Firefox Force KillSwitch error:', _t6);
        case 7:
          return _context8.a(2);
      }
    }, _callee8, null, [[0, 5]]);
  }));
  return _firefoxKillSwitch.apply(this, arguments);
}
function disconnectWithEnableKillSwitch(_x6) {
  return _disconnectWithEnableKillSwitch.apply(this, arguments);
}
function _disconnectWithEnableKillSwitch() {
  _disconnectWithEnableKillSwitch = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee9(sendResponse) {
    return _regenerator().w(function (_context9) {
      while (1) switch (_context9.n) {
        case 0:
          _context9.n = 1;
          return clearProxy(function (response) {
            sendResponse(response);
          });
        case 1:
          _context9.n = 2;
          return enableForceKillSwitch(true, true);
        case 2:
          _context9.n = 3;
          return removeStorageAsync(STORAGE_KEYS.SELECTED_COUNTRY);
        case 3:
          return _context9.a(2);
      }
    }, _callee9);
  }));
  return _disconnectWithEnableKillSwitch.apply(this, arguments);
}
module.exports = {
  handleDisconnect: handleDisconnect,
  enableForceKillSwitch: enableForceKillSwitch,
  disconnectProxy: disconnectProxy,
  disconnectWithEnableKillSwitch: disconnectWithEnableKillSwitch
};

/***/ }),

/***/ "./src/sw/tools/ui_utils.js":
/*!**********************************!*\
  !*** ./src/sw/tools/ui_utils.js ***!
  \**********************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var _require = __webpack_require__(/*! @common/functions/executeScriptCompat */ "./src/common/functions/executeScriptCompat.js"),
  executeScriptCompat = _require.executeScriptCompat;
var _require2 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require2.log,
  LOG_LEVELS = _require2.LOG_LEVELS;
function showKillSwitchWarning() {
  browserApi.tabs.query({
    active: true,
    currentWindow: true
  }, function (tabs) {
    if (tabs[0]) {
      var tab = tabs[0];
      if (tab.url && tab.url.startsWith('browserApi://')) {
        return;
      }
      executeScriptCompat({
        tabId: tab.id,
        func: function func() {
          var existingWarning = document.getElementById('killSwitchWarning');
          if (existingWarning) {
            existingWarning.remove();
          }
          var warning = document.createElement('div');
          warning.id = 'killSwitchWarning';
          warning.innerHTML = "\n            <div style=\"position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); z-index: 9999; display: flex; justify-content: center; align-items: center;\">\n              <div style=\"background: #f8d7da; color: #721c24; padding: 20px; border: 1px solid #f5c6cb; border-radius: 5px; text-align: center;\">\n                <h1 style=\"font-size: 18px; margin-bottom: 10px;\">Kill Switch Activated</h1>\n                <p style=\"font-size: 14px; margin-bottom: 20px;\">Your internet access is blocked until you reconnect to the VPN.</p>\n                <button id=\"killSwitchOkButton\" style=\"background: #721c24; color: white; border: none; padding: 10px 20px; border-radius: 5px; cursor: pointer;\">OK</button>\n              </div>\n            </div>\n          ";
          document.body.appendChild(warning);
          var okButton = document.getElementById('killSwitchOkButton');
          if (okButton) {
            okButton.addEventListener('click', function () {
              warning.remove();
            });
          }
        }
      }, function () {
        if (browserApi.runtime.lastError) {
          log(LOG_LEVELS.ERROR, 'Error injecting warning:', browserApi.runtime.lastError);
        } else {
          log(LOG_LEVELS.INFO, 'Warning injected into active tab');
        }
      });
    } else {
      log(LOG_LEVELS.INFO, 'Active tab not found');
    }
  });
}
module.exports = {
  showKillSwitchWarning: showKillSwitchWarning
};

/***/ }),

/***/ "./src/sw/tools/utils.js":
/*!*******************************!*\
  !*** ./src/sw/tools/utils.js ***!
  \*******************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {

function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
var _require = __webpack_require__(/*! ../main/notification_service */ "./src/sw/main/notification_service.js"),
  notifyInsecureWebsite = _require.notifyInsecureWebsite;
var _require2 = __webpack_require__(/*! ../constants/security_constants */ "./src/sw/constants/security_constants.js"),
  WEBRTC_DISABLE_NON_PROXIED_UDP = _require2.WEBRTC_DISABLE_NON_PROXIED_UDP,
  WEBRTC_DEFAULT_PUBLIC_AND_PRIVATE = _require2.WEBRTC_DEFAULT_PUBLIC_AND_PRIVATE,
  getBlockedDomains = _require2.getBlockedDomains,
  getBlockingRules = _require2.getBlockingRules;
var _require3 = __webpack_require__(/*! ./ui_utils */ "./src/sw/tools/ui_utils.js"),
  showKillSwitchWarning = _require3.showKillSwitchWarning;
var _require4 = __webpack_require__(/*! ./common */ "./src/sw/tools/common.js"),
  updateIcon = _require4.updateIcon,
  createBypassMatchers = _require4.createBypassMatchers;
var StorageService = __webpack_require__(/*! @services/StorageService */ "./src/common/services/StorageService.js");
var browserApi = __webpack_require__(/*! @common/browserApi */ "./src/common/browserApi.js");
var _require5 = __webpack_require__(/*! @sw/tools/log */ "./src/sw/tools/log.js"),
  log = _require5.log,
  LOG_LEVELS = _require5.LOG_LEVELS;
var _require6 = __webpack_require__(/*! @sw/constants/statuses_constants */ "./src/sw/constants/statuses_constants.js"),
  PROXY_STATUSES = _require6.PROXY_STATUSES;
var LogsService = (__webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js")["default"]);
function setWarnings(_x, _x2) {
  return _setWarnings.apply(this, arguments);
}
function _setWarnings() {
  _setWarnings = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(enabled, callback) {
    var settings, _t;
    return _regenerator().w(function (_context) {
      while (1) switch (_context.p = _context.n) {
        case 0:
          _context.p = 0;
          _context.n = 1;
          return LogsService.addEvents('service.error.utils.setWarnings');
        case 1:
          _context.n = 2;
          return StorageService.getSecuritySettings();
        case 2:
          settings = _context.v;
          settings.warnings = enabled;
          _context.n = 3;
          return StorageService.saveSecuritySettings(settings);
        case 3:
          callback({
            success: true
          });
          _context.n = 6;
          break;
        case 4:
          _context.p = 4;
          _t = _context.v;
          _context.n = 5;
          return LogsService.addEvents('service.error.utils.setWarnings', _t === null || _t === void 0 ? void 0 : _t.message);
        case 5:
          callback({
            success: false
          });
        case 6:
          return _context.a(2);
      }
    }, _callee, null, [[0, 4]]);
  }));
  return _setWarnings.apply(this, arguments);
}
function checkWebsiteSecurity(_x3, _x4) {
  return _checkWebsiteSecurity.apply(this, arguments);
}
function _checkWebsiteSecurity() {
  _checkWebsiteSecurity = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(details, handleInternalMessage) {
    var proxyStatus, settings, warningsEnabled, isConnected, url;
    return _regenerator().w(function (_context2) {
      while (1) switch (_context2.n) {
        case 0:
          _context2.n = 1;
          return StorageService.getProxyStatus();
        case 1:
          proxyStatus = _context2.v;
          _context2.n = 2;
          return StorageService.getSecuritySettings();
        case 2:
          settings = _context2.v;
          warningsEnabled = (settings === null || settings === void 0 ? void 0 : settings.warnings) || false;
          isConnected = proxyStatus === PROXY_STATUSES.CONNECT;
          _context2.n = 3;
          return LogsService.addEvents('service.checkWebsiteSecurity');
        case 3:
          if (!(!warningsEnabled || isConnected || !details.url || details.url.startsWith('chrome://') || details.url.startsWith('about:'))) {
            _context2.n = 4;
            break;
          }
          return _context2.a(2);
        case 4:
          url = details.url;
          if (url.startsWith('http://') && !url.startsWith('http://localhost')) {
            notifyInsecureWebsite(handleInternalMessage);
          }
        case 5:
          return _context2.a(2);
      }
    }, _callee2);
  }));
  return _checkWebsiteSecurity.apply(this, arguments);
}
function setThreatProtection(_x5, _x6) {
  return _setThreatProtection.apply(this, arguments);
}
function _setThreatProtection() {
  _setThreatProtection = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee3(enabled, callback) {
    var dontUpdateStorage,
      securitySettings,
      _args3 = arguments,
      _t2;
    return _regenerator().w(function (_context3) {
      while (1) switch (_context3.p = _context3.n) {
        case 0:
          dontUpdateStorage = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : false;
          _context3.p = 1;
          _context3.n = 2;
          return enableThreatProtection(enabled);
        case 2:
          if (dontUpdateStorage) {
            _context3.n = 4;
            break;
          }
          _context3.n = 3;
          return StorageService.getSecuritySettings();
        case 3:
          securitySettings = _context3.v;
          securitySettings.threatProtection = enabled;
          _context3.n = 4;
          return StorageService.saveSecuritySettings(securitySettings);
        case 4:
          callback({
            success: true
          });
          _context3.n = 7;
          break;
        case 5:
          _context3.p = 5;
          _t2 = _context3.v;
          _context3.n = 6;
          return LogsService.addEvents('service.error.setThreatProtection', _t2 === null || _t2 === void 0 ? void 0 : _t2.message);
        case 6:
          callback({
            success: false
          });
        case 7:
          return _context3.a(2);
      }
    }, _callee3, null, [[1, 5]]);
  }));
  return _setThreatProtection.apply(this, arguments);
}
function enableThreatProtection(_x7) {
  return _enableThreatProtection.apply(this, arguments);
}
function _enableThreatProtection() {
  _enableThreatProtection = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee4(enabled) {
    var proxyStatus, isConnected, blockedDomains, rules, removeRuleIds, _t3;
    return _regenerator().w(function (_context4) {
      while (1) switch (_context4.p = _context4.n) {
        case 0:
          _context4.p = 0;
          _context4.n = 1;
          return LogsService.addEvents('service.setThreatProtection');
        case 1:
          _context4.n = 2;
          return StorageService.getProxyStatus();
        case 2:
          proxyStatus = _context4.v;
          isConnected = proxyStatus === PROXY_STATUSES.CONNECT;
          _context4.n = 3;
          return getBlockedDomains();
        case 3:
          blockedDomains = _context4.v;
          rules = enabled && isConnected ? getBlockingRules(blockedDomains) : [];
          removeRuleIds = blockedDomains && blockedDomains.length > 0 ? Array.from({
            length: blockedDomains.length
          }, function (_, index) {
            return index + 1;
          }) : [];
          _context4.n = 4;
          return browserApi.declarativeNetRequest.updateDynamicRules({
            removeRuleIds: removeRuleIds,
            addRules: rules
          });
        case 4:
          _context4.n = 6;
          break;
        case 5:
          _context4.p = 5;
          _t3 = _context4.v;
          _context4.n = 6;
          return LogsService.addEvents('service.error.setThreatProtection', _t3 === null || _t3 === void 0 ? void 0 : _t3.message);
        case 6:
          return _context4.a(2);
      }
    }, _callee4, null, [[0, 5]]);
  }));
  return _enableThreatProtection.apply(this, arguments);
}
function setWebRTCLeakProtection(_x8, _x9) {
  return _setWebRTCLeakProtection.apply(this, arguments);
}
function _setWebRTCLeakProtection() {
  _setWebRTCLeakProtection = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee5(enabled, callback) {
    var securitySettings, _t4;
    return _regenerator().w(function (_context5) {
      while (1) switch (_context5.p = _context5.n) {
        case 0:
          _context5.p = 0;
          _context5.n = 1;
          return enableWebRTCProtection(enabled);
        case 1:
          _context5.n = 2;
          return StorageService.getSecuritySettings();
        case 2:
          securitySettings = _context5.v;
          securitySettings.stopWebRTC = enabled;
          _context5.n = 3;
          return StorageService.saveSecuritySettings(securitySettings);
        case 3:
          callback({
            success: true
          });
          _context5.n = 6;
          break;
        case 4:
          _context5.p = 4;
          _t4 = _context5.v;
          _context5.n = 5;
          return LogsService.addEvents('service.error.setWebRTCLeakProtection', _t4 === null || _t4 === void 0 ? void 0 : _t4.message);
        case 5:
          callback({
            success: false,
            error: 'Failed to set WebRTC policy'
          });
        case 6:
          return _context5.a(2);
      }
    }, _callee5, null, [[0, 4]]);
  }));
  return _setWebRTCLeakProtection.apply(this, arguments);
}
function enableWebRTCProtection(_x0) {
  return _enableWebRTCProtection.apply(this, arguments);
}
function _enableWebRTCProtection() {
  _enableWebRTCProtection = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee6(enabled) {
    var webrtcSetting, isFirefox, value;
    return _regenerator().w(function (_context6) {
      while (1) switch (_context6.n) {
        case 0:
          if (!(!browserApi.privacy || !browserApi.privacy.network || !browserApi.privacy.network.webRTCIPHandlingPolicy)) {
            _context6.n = 2;
            break;
          }
          log(LOG_LEVELS.INFO, 'Privacy API or webRTCIPHandlingPolicy is not available', 'error');
          _context6.n = 1;
          return LogsService.addEvents('service.setWebRTCLeakProtection', 'error');
        case 1:
          return _context6.a(2);
        case 2:
          _context6.n = 3;
          return LogsService.addEvents('service.setWebRTCLeakProtection', 'init');
        case 3:
          webrtcSetting = browserApi.privacy.network.webRTCIPHandlingPolicy;
          isFirefox = typeof browser !== 'undefined' && browser.runtime && browser.runtime.getBrowserInfo;
          value = isFirefox ? 'disable_non_proxied_udp' : enabled ? WEBRTC_DISABLE_NON_PROXIED_UDP : WEBRTC_DEFAULT_PUBLIC_AND_PRIVATE;
          _context6.n = 4;
          return webrtcSetting.set({
            value: value,
            scope: 'regular'
          });
        case 4:
          return _context6.a(2);
      }
    }, _callee6);
  }));
  return _enableWebRTCProtection.apply(this, arguments);
}
function setSplitTunneling(_x1, _x10) {
  return _setSplitTunneling.apply(this, arguments);
}
function _setSplitTunneling() {
  _setSplitTunneling = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee7(enabled, callback) {
    var settings, _t5;
    return _regenerator().w(function (_context7) {
      while (1) switch (_context7.p = _context7.n) {
        case 0:
          _context7.p = 0;
          _context7.n = 1;
          return LogsService.addEvents('service.setSplitTunneling');
        case 1:
          _context7.n = 2;
          return StorageService.getSettings();
        case 2:
          settings = _context7.v;
          settings.splitTunneling = enabled;
          _context7.n = 3;
          return StorageService.saveSettings(settings);
        case 3:
          callback({
            success: true
          });
          _context7.n = 6;
          break;
        case 4:
          _context7.p = 4;
          _t5 = _context7.v;
          _context7.n = 5;
          return LogsService.addEvents('service.error.setSplitTunneling', _t5.message);
        case 5:
          callback({
            success: false
          });
        case 6:
          return _context7.a(2);
      }
    }, _callee7, null, [[0, 4]]);
  }));
  return _setSplitTunneling.apply(this, arguments);
}
module.exports = {
  updateIcon: updateIcon,
  setWarnings: setWarnings,
  checkWebsiteSecurity: checkWebsiteSecurity,
  setThreatProtection: setThreatProtection,
  setWebRTCLeakProtection: setWebRTCLeakProtection,
  enableWebRTCProtection: enableWebRTCProtection,
  enableThreatProtection: enableThreatProtection,
  showKillSwitchWarning: showKillSwitchWarning,
  createBypassMatchers: createBypassMatchers,
  setSplitTunneling: setSplitTunneling
};

/***/ }),

/***/ "./src/tools/tools.js":
/*!****************************!*\
  !*** ./src/tools/tools.js ***!
  \****************************/
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */   parseJwt: () => (/* binding */ parseJwt)
/* harmony export */ });
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
/**
 * @param {string} token
 * @returns {Object}
 */
var translateService = __webpack_require__(/*! @common/services/TranslateService */ "./src/common/services/TranslateService.js");
function parseJwt(token) {
  try {
    if (typeof token !== 'string' || !token.includes('.')) {
      throw new Error(translateService.t('invalid_jwt'));
    }
    var _token$split = token.split('.'),
      _token$split2 = _slicedToArray(_token$split, 3),
      headerEncoded = _token$split2[0],
      payloadEncoded = _token$split2[1],
      signature = _token$split2[2];
    if (!headerEncoded || !payloadEncoded || !signature) {
      throw new Error(translateService.t('miss_jwt'));
    }
    var decodeBase64Url = function decodeBase64Url(str) {
      str = str.replace(/-/g, '+').replace(/_/g, '/');
      var pad = str.length % 4;
      if (pad) {
        str += '='.repeat(4 - pad);
      }
      return atob(str);
    };
    var header = JSON.parse(decodeBase64Url(headerEncoded));
    var payload = JSON.parse(decodeBase64Url(payloadEncoded));
    return {
      header: header,
      payload: payload,
      signature: signature
    };
  } catch (error) {
    return {
      error: error.message
    };
  }
}


/***/ })

/******/ 	});
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __webpack_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			id: moduleId,
/******/ 			loaded: false,
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/ 	
/******/ 		// Flag the module as loaded
/******/ 		module.loaded = true;
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/******/ 	// expose the modules object (__webpack_modules__)
/******/ 	__webpack_require__.m = __webpack_modules__;
/******/ 	
/************************************************************************/
/******/ 	/* webpack/runtime/compat get default export */
/******/ 	(() => {
/******/ 		// getDefaultExport function for compatibility with non-harmony modules
/******/ 		__webpack_require__.n = (module) => {
/******/ 			var getter = module && module.__esModule ?
/******/ 				() => (module['default']) :
/******/ 				() => (module);
/******/ 			__webpack_require__.d(getter, { a: getter });
/******/ 			return getter;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/create fake namespace object */
/******/ 	(() => {
/******/ 		var getProto = Object.getPrototypeOf ? (obj) => (Object.getPrototypeOf(obj)) : (obj) => (obj.__proto__);
/******/ 		var leafPrototypes;
/******/ 		// create a fake namespace object
/******/ 		// mode & 1: value is a module id, require it
/******/ 		// mode & 2: merge all properties of value into the ns
/******/ 		// mode & 4: return value when already ns object
/******/ 		// mode & 16: return value when it's Promise-like
/******/ 		// mode & 8|1: behave like require
/******/ 		__webpack_require__.t = function(value, mode) {
/******/ 			if(mode & 1) value = this(value);
/******/ 			if(mode & 8) return value;
/******/ 			if(typeof value === 'object' && value) {
/******/ 				if((mode & 4) && value.__esModule) return value;
/******/ 				if((mode & 16) && typeof value.then === 'function') return value;
/******/ 			}
/******/ 			var ns = Object.create(null);
/******/ 			__webpack_require__.r(ns);
/******/ 			var def = {};
/******/ 			leafPrototypes = leafPrototypes || [null, getProto({}), getProto([]), getProto(getProto)];
/******/ 			for(var current = mode & 2 && value; (typeof current == 'object' || typeof current == 'function') && !~leafPrototypes.indexOf(current); current = getProto(current)) {
/******/ 				Object.getOwnPropertyNames(current).forEach((key) => (def[key] = () => (value[key])));
/******/ 			}
/******/ 			def['default'] = () => (value);
/******/ 			__webpack_require__.d(ns, def);
/******/ 			return ns;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/define property getters */
/******/ 	(() => {
/******/ 		// define getter functions for harmony exports
/******/ 		__webpack_require__.d = (exports, definition) => {
/******/ 			for(var key in definition) {
/******/ 				if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
/******/ 					Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
/******/ 				}
/******/ 			}
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/ensure chunk */
/******/ 	(() => {
/******/ 		// The chunk loading function for additional chunks
/******/ 		// Since all referenced chunks are already included
/******/ 		// in this file, this function is empty here.
/******/ 		__webpack_require__.e = () => (Promise.resolve());
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/global */
/******/ 	(() => {
/******/ 		__webpack_require__.g = (function() {
/******/ 			if (typeof globalThis === 'object') return globalThis;
/******/ 			try {
/******/ 				return this || new Function('return this')();
/******/ 			} catch (e) {
/******/ 				if (typeof window === 'object') return window;
/******/ 			}
/******/ 		})();
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/hasOwnProperty shorthand */
/******/ 	(() => {
/******/ 		__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/make namespace object */
/******/ 	(() => {
/******/ 		// define __esModule on exports
/******/ 		__webpack_require__.r = (exports) => {
/******/ 			if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ 				Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ 			}
/******/ 			Object.defineProperty(exports, '__esModule', { value: true });
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/node module decorator */
/******/ 	(() => {
/******/ 		__webpack_require__.nmd = (module) => {
/******/ 			module.paths = [];
/******/ 			if (!module.children) module.children = [];
/******/ 			return module;
/******/ 		};
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/publicPath */
/******/ 	(() => {
/******/ 		var scriptUrl;
/******/ 		if (__webpack_require__.g.importScripts) scriptUrl = __webpack_require__.g.location + "";
/******/ 		var document = __webpack_require__.g.document;
/******/ 		if (!scriptUrl && document) {
/******/ 			if (document.currentScript && document.currentScript.tagName.toUpperCase() === 'SCRIPT')
/******/ 				scriptUrl = document.currentScript.src;
/******/ 			if (!scriptUrl) {
/******/ 				var scripts = document.getElementsByTagName("script");
/******/ 				if(scripts.length) {
/******/ 					var i = scripts.length - 1;
/******/ 					while (i > -1 && (!scriptUrl || !/^http(s?):/.test(scriptUrl))) scriptUrl = scripts[i--].src;
/******/ 				}
/******/ 			}
/******/ 		}
/******/ 		// When supporting browsers where an automatic publicPath is not supported you must specify an output.publicPath manually via configuration
/******/ 		// or pass an empty string ("") and set the __webpack_public_path__ variable from your code to use your own logic.
/******/ 		if (!scriptUrl) throw new Error("Automatic publicPath is not supported in this browser");
/******/ 		scriptUrl = scriptUrl.replace(/^blob:/, "").replace(/#.*$/, "").replace(/\?.*$/, "").replace(/\/[^\/]+$/, "/");
/******/ 		__webpack_require__.p = scriptUrl;
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/jsonp chunk loading */
/******/ 	(() => {
/******/ 		__webpack_require__.b = (typeof document !== 'undefined' && document.baseURI) || self.location.href;
/******/ 		
/******/ 		// object to store loaded and loading chunks
/******/ 		// undefined = chunk not loaded, null = chunk preloaded/prefetched
/******/ 		// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
/******/ 		var installedChunks = {
/******/ 			"index": 0
/******/ 		};
/******/ 		
/******/ 		// no chunk on demand loading
/******/ 		
/******/ 		// no prefetching
/******/ 		
/******/ 		// no preloaded
/******/ 		
/******/ 		// no HMR
/******/ 		
/******/ 		// no HMR manifest
/******/ 		
/******/ 		// no on chunks loaded
/******/ 		
/******/ 		// no jsonp function
/******/ 	})();
/******/ 	
/******/ 	/* webpack/runtime/nonce */
/******/ 	(() => {
/******/ 		__webpack_require__.nc = undefined;
/******/ 	})();
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry needs to be wrapped in an IIFE because it needs to be in strict mode.
(() => {
"use strict";
/*!**********************!*\
  !*** ./src/index.js ***!
  \**********************/
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "./node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react_dom_client__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-dom/client */ "./node_modules/react-dom/client.js");
/* harmony import */ var _components_shared_components_BottomMenu_BottomMenu_jsx__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./components/shared/components/BottomMenu/BottomMenu.jsx */ "./src/components/shared/components/BottomMenu/BottomMenu.jsx");
/* harmony import */ var _components_pages_SettingsScreen_SettingsScreen_jsx__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./components/pages/SettingsScreen/SettingsScreen.jsx */ "./src/components/pages/SettingsScreen/SettingsScreen.jsx");
/* harmony import */ var _src_components_shared_components_AnotherProxy_AnotherProxy_jsx__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @src/components/shared/components/AnotherProxy/AnotherProxy.jsx */ "./src/components/shared/components/AnotherProxy/AnotherProxy.jsx");
/* harmony import */ var _components_pages_GetHelp_GetHelp_jsx__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./components/pages/GetHelp/GetHelp.jsx */ "./src/components/pages/GetHelp/GetHelp.jsx");
/* harmony import */ var _components_pages_Profile_Profile_jsx__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./components/pages/Profile/Profile.jsx */ "./src/components/pages/Profile/Profile.jsx");
/* harmony import */ var _css_style_css__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../css/style.css */ "./css/style.css");
/* harmony import */ var _components_pages_LoginComponent_jsx__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./components/pages/LoginComponent.jsx */ "./src/components/pages/LoginComponent.jsx");
/* harmony import */ var _context_LanguageContext__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @context/LanguageContext */ "./src/context/LanguageContext.js");
/* harmony import */ var _components_VpnHeader_jsx__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./components/VpnHeader.jsx */ "./src/components/VpnHeader.jsx");
/* harmony import */ var _components_VpnControls_VpnControls_jsx__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./components/VpnControls/VpnControls.jsx */ "./src/components/VpnControls/VpnControls.jsx");
/* harmony import */ var _components_CountrySelector_CountrySelector_jsx__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./components/CountrySelector/CountrySelector.jsx */ "./src/components/CountrySelector/CountrySelector.jsx");
/* harmony import */ var _hooks_useVpnState__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./hooks/useVpnState */ "./src/hooks/useVpnState.js");
/* harmony import */ var _hooks_useTheme__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! ./hooks/useTheme */ "./src/hooks/useTheme.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @sw/constants/listen_constants */ "./src/sw/constants/listen_constants.js");
/* harmony import */ var _sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_15___default = /*#__PURE__*/__webpack_require__.n(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_15__);
/* harmony import */ var _src_hooks_useErrorHandler__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! @src/hooks/useErrorHandler */ "./src/hooks/useErrorHandler.js");
/* harmony import */ var _components_pages_ContactUs_ContactUs_jsx__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! ./components/pages/ContactUs/ContactUs.jsx */ "./src/components/pages/ContactUs/ContactUs.jsx");
/* harmony import */ var _src_components_pages_ReportViewScreen_ReportViewScreen__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! @src/components/pages/ReportViewScreen/ReportViewScreen */ "./src/components/pages/ReportViewScreen/ReportViewScreen.jsx");
/* harmony import */ var _src_components_NoSubscribe_NoSubscribe_jsx__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! @src/components/NoSubscribe/NoSubscribe.jsx */ "./src/components/NoSubscribe/NoSubscribe.jsx");
/* harmony import */ var _src_components_Preloader_Preloader_jsx__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! @src/components/Preloader/Preloader.jsx */ "./src/components/Preloader/Preloader.jsx");
/* harmony import */ var _services_LogsService__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! @services/LogsService */ "./src/common/services/LogsService.js");
/* harmony import */ var _src_components_shared_components_Alert_Alert__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! @src/components/shared/components/Alert/Alert */ "./src/components/shared/components/Alert/Alert.jsx");
/* harmony import */ var _hooks_useExtensionHeight__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./hooks/useExtensionHeight */ "./src/hooks/useExtensionHeight.js");
/* harmony import */ var _services_SendMessageService__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! @services/SendMessageService */ "./src/common/services/SendMessageService.js");
/* harmony import */ var _src_components_shared_components_DisabledPermissionsExtension_DisabledPermissionsExtension__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! @src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension */ "./src/components/shared/components/DisabledPermissionsExtension/DisabledPermissionsExtension.jsx");
function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
function _nonIterableRest() { 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 _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }



























var Popup = function Popup() {
  var _useVpnState = (0,_hooks_useVpnState__WEBPACK_IMPORTED_MODULE_13__["default"])(),
    loggedIn = _useVpnState.loggedIn,
    clearAllErrors = _useVpnState.clearAllErrors,
    getErrorMessage = _useVpnState.getErrorMessage,
    selectedCountry = _useVpnState.selectedCountry,
    setSelectedCountry = _useVpnState.setSelectedCountry,
    view = _useVpnState.view,
    _setView = _useVpnState.setView,
    userData = _useVpnState.userData,
    settings = _useVpnState.settings,
    setAppearance = _useVpnState.setAppearance,
    isPause = _useVpnState.isPause,
    setPause = _useVpnState.setPause,
    connectRandomIp = _useVpnState.connectRandomIp,
    connectSelectIp = _useVpnState.connectSelectIp,
    disconnect = _useVpnState.disconnect,
    isConnected = _useVpnState.isConnected,
    autoDisconnect = _useVpnState.autoDisconnect,
    onSelectCityCode = _useVpnState.onSelectCityCode,
    processConnect = _useVpnState.processConnect,
    cityCode = _useVpnState.cityCode,
    token = _useVpnState.token,
    pauseCountry = _useVpnState.pauseCountry,
    ping = _useVpnState.ping,
    setProcessConnect = _useVpnState.setProcessConnect,
    setConnectError = _useVpnState.setConnectError,
    checkAndConnect = _useVpnState.checkAndConnect,
    setManualSelectedCountry = _useVpnState.setManualSelectedCountry,
    appearance = _useVpnState.appearance,
    isBlockConnect = _useVpnState.isBlockConnect,
    isLoadingData = _useVpnState.isLoadingData,
    apiCountries = _useVpnState.apiCountries,
    lastCountries = _useVpnState.lastCountries,
    setPauseCountry = _useVpnState.setPauseCountry,
    cancelConnect = _useVpnState.cancelConnect,
    cancelStatus = _useVpnState.cancelStatus,
    processConnectAfterPause = _useVpnState.processConnectAfterPause,
    anotherExtensionActive = _useVpnState.anotherExtensionActive,
    disabledPermissionsExtension = _useVpnState.disabledPermissionsExtension,
    apiGateways = _useVpnState.apiGateways,
    apiGatewayMain = _useVpnState.apiGatewayMain,
    subMenu = _useVpnState.subMenu,
    setSubMenu = _useVpnState.setSubMenu,
    connectSelectIpByStatus = _useVpnState.connectSelectIpByStatus,
    cancelDisconnect = _useVpnState.cancelDisconnect,
    processDisconnect = _useVpnState.processDisconnect;
  var _useContext = (0,react__WEBPACK_IMPORTED_MODULE_0__.useContext)(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_9__["default"]),
    t = _useContext.t;
  var _useErrorHandler = (0,_src_hooks_useErrorHandler__WEBPACK_IMPORTED_MODULE_16__["default"])(),
    setGeneralError = _useErrorHandler.setGeneralError;
  var theme = (0,_hooks_useTheme__WEBPACK_IMPORTED_MODULE_14__["default"])(appearance);
  var error = getErrorMessage();
  var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(600),
    _useState2 = _slicedToArray(_useState, 2),
    maxHeight = _useState2[0],
    setMaxHeight = _useState2[1];
  var isFirefox = /firefox/i.test(navigator.userAgent);
  (0,_hooks_useExtensionHeight__WEBPACK_IMPORTED_MODULE_23__["default"])({
    isFirefox: isFirefox,
    loggedIn: loggedIn,
    setMaxHeight: setMaxHeight
  });
  var isNoSubscription = (error === null || error === void 0 ? void 0 : error.code) === "no_subscription";
  var countrySelectorProps = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(function () {
    return {
      selectedCountry: selectedCountry,
      onSelect: function onSelect(countryName) {
        setSelectedCountry(countryName);
      },
      isConnected: isConnected,
      processConnect: processConnect,
      cityCode: cityCode,
      onSelectCityCode: onSelectCityCode,
      isBlockConnect: isBlockConnect,
      setManualSelectedCountry: setManualSelectedCountry,
      apiCountries: apiCountries,
      lastCountries: lastCountries,
      processConnectAfterPause: processConnectAfterPause,
      processDisconnect: processDisconnect,
      userData: userData,
      isPause: isPause,
      pauseCountry: pauseCountry
    };
  }, [selectedCountry, isConnected, processConnect, cityCode, onSelectCityCode, isBlockConnect, setManualSelectedCountry, setSelectedCountry, apiCountries, lastCountries, processConnectAfterPause, processDisconnect, userData, isPause, pauseCountry]);
  return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "vpn-wrapper ".concat(loggedIn ? "logged-in" : "", " ").concat(theme),
    style: isFirefox ? {} : {
      height: "".concat(maxHeight, "px")
    }
  }, !anotherExtensionActive && !disabledPermissionsExtension ? !loggedIn ? !isLoadingData ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "login-wrapper"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_pages_LoginComponent_jsx__WEBPACK_IMPORTED_MODULE_8__["default"], {
    onLogin: function onLogin() {
      _services_LogsService__WEBPACK_IMPORTED_MODULE_21__["default"].addEvents("extension.login");
      _services_SendMessageService__WEBPACK_IMPORTED_MODULE_24__["default"].sendMessage(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_15__.OPEN_LOGIN)["catch"](function (err) {
        setGeneralError(err.message);
        _services_LogsService__WEBPACK_IMPORTED_MODULE_21__["default"].addEvents("extension.error_login", err === null || err === void 0 ? void 0 : err.message);
      });
    },
    onRegistration: function onRegistration() {
      _services_LogsService__WEBPACK_IMPORTED_MODULE_21__["default"].addEvents("extension.registration");
      _services_SendMessageService__WEBPACK_IMPORTED_MODULE_24__["default"].sendMessage(_sw_constants_listen_constants__WEBPACK_IMPORTED_MODULE_15__.OPEN_REGISTRATION)["catch"](function (err) {
        setGeneralError(err.message);
        _services_LogsService__WEBPACK_IMPORTED_MODULE_21__["default"].addEvents("extension.error_registration", err === null || err === void 0 ? void 0 : err.message);
      });
    },
    theme: theme
  }), error && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Alert_Alert__WEBPACK_IMPORTED_MODULE_22__["default"], {
    className: "login-error"
  }, error.message)) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_Preloader_Preloader_jsx__WEBPACK_IMPORTED_MODULE_20__["default"], null) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "main-content"
  }, loggedIn && !isNoSubscription && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_VpnHeader_jsx__WEBPACK_IMPORTED_MODULE_10__["default"], {
    isConnected: isConnected,
    processConnect: processConnect,
    isBlockConnect: isBlockConnect,
    isPause: isPause,
    userData: userData,
    cancelStatus: cancelStatus,
    ping: ping,
    processConnectAfterPause: processConnectAfterPause,
    processDisconnect: processDisconnect
  }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement((react__WEBPACK_IMPORTED_MODULE_0___default().Fragment), null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "scroll-content"
  }, isNoSubscription && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_NoSubscribe_NoSubscribe_jsx__WEBPACK_IMPORTED_MODULE_19__["default"], null), loggedIn && error && !isNoSubscription && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement("div", {
    className: "error-message-wrapper"
  }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_Alert_Alert__WEBPACK_IMPORTED_MODULE_22__["default"], null, t(error.message))), loggedIn && view === "home" && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_VpnControls_VpnControls_jsx__WEBPACK_IMPORTED_MODULE_11__["default"], {
    isConnected: isConnected,
    isBlockConnect: isBlockConnect,
    isPause: isPause,
    settings: settings,
    onConnect: connectRandomIp,
    onDisconnect: disconnect,
    onAutoDisconnect: autoDisconnect,
    connectSelectIp: connectSelectIp,
    connectSelectIpByStatus: connectSelectIpByStatus,
    setPause: setPause,
    processConnect: processConnect,
    selectedCountry: selectedCountry,
    cityCode: cityCode,
    pauseCountry: pauseCountry,
    theme: theme,
    setPauseCountry: setPauseCountry,
    cancelConnect: cancelConnect,
    processConnectAfterPause: processConnectAfterPause,
    processDisconnect: processDisconnect,
    cancelDisconnect: cancelDisconnect,
    userData: userData,
    apiCountries: apiCountries
  }), view === "help" && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_pages_GetHelp_GetHelp_jsx__WEBPACK_IMPORTED_MODULE_5__["default"], {
    setView: _setView
  }), view === "help/contact_us" && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_pages_ContactUs_ContactUs_jsx__WEBPACK_IMPORTED_MODULE_17__["default"], {
    token: token,
    setView: _setView,
    setConnectError: setConnectError,
    view: view
  }), view === "help/report_a_problem" && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_pages_ReportViewScreen_ReportViewScreen__WEBPACK_IMPORTED_MODULE_18__["default"], {
    token: token,
    setView: _setView,
    setConnectError: setConnectError
  }), view === "profile" && !!userData && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_pages_Profile_Profile_jsx__WEBPACK_IMPORTED_MODULE_6__["default"], {
    userData: userData,
    token: token,
    setGeneralError: setGeneralError,
    clearAllErrors: clearAllErrors,
    setView: _setView,
    processConnect: processConnect
  }), view === "profile/contact_us" && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_pages_ContactUs_ContactUs_jsx__WEBPACK_IMPORTED_MODULE_17__["default"], {
    token: token,
    setView: function setView() {
      return _setView("profile");
    },
    view: view
  }), view === "settings" ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_pages_SettingsScreen_SettingsScreen_jsx__WEBPACK_IMPORTED_MODULE_3__["default"], {
    setAppearance: setAppearance,
    clearAllErrors: clearAllErrors,
    connectRandomIp: connectRandomIp,
    disconnect: disconnect,
    setProcessConnect: setProcessConnect,
    setConnectError: setConnectError,
    processConnect: processConnect,
    checkAndConnect: checkAndConnect,
    userData: userData,
    apiGateways: apiGateways,
    apiGatewayMain: apiGatewayMain,
    subMenu: subMenu,
    setSubMenu: setSubMenu,
    processDisconnect: processDisconnect
  }) : loggedIn && view === "home" && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_CountrySelector_CountrySelector_jsx__WEBPACK_IMPORTED_MODULE_12__["default"], countrySelectorProps)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_components_shared_components_BottomMenu_BottomMenu_jsx__WEBPACK_IMPORTED_MODULE_2__["default"], {
    view: view,
    setView: _setView,
    setSubMenu: setSubMenu
  })))) : disabledPermissionsExtension ? /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_DisabledPermissionsExtension_DisabledPermissionsExtension__WEBPACK_IMPORTED_MODULE_25__["default"], null) : /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_src_components_shared_components_AnotherProxy_AnotherProxy_jsx__WEBPACK_IMPORTED_MODULE_4__["default"], null));
};
var root = (0,react_dom_client__WEBPACK_IMPORTED_MODULE_1__.createRoot)(document.getElementById("root"));
root.render(/*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(_context_LanguageContext__WEBPACK_IMPORTED_MODULE_9__.LanguageProvider, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default().createElement(Popup, null)));
})();

/******/ })()
;
//# sourceMappingURL=index.js.map